@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(data:font/woff2;base64,d09GMgABAAAAAAa0ABQAAAAADOwAAAZHAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhYbbhwoP0hWQVJtP01WQVJGBmA/U1RBVIEcAGQvXBEICoMkgmcLFgAwhEwBNgIkAyYEIAWGXAdiDAcbOgtRlHLSRcD8TEzkdoghPRuspKefbVnJIM5yRfA8vZv9uTNJSCZY21Scrigr6qyJ/C3sE1OFKuVP3e+lxUTbYio1zb/kFdk2bufY2BlhWERRBrcDUBhB5GEpd2Cy+MDxqf9zLPX+XVsk5r+s50d6IpWLatqbdT6f2MAikiOKQocbjya2QT0DqPDX4R0jQBgAUAiCRhDA0EkvYeLk9X3I2bEWI8jBAihIANm+kUWQBgggWChcBBdFhXlAUgOCAgBA0AgKjUJ8HKvjddFCKSgAVklEBYAeEJgCQJH0qB3B+neDg4sAA4hAD0AVIEAA0IACJGeaUjMIIIhBUE/zNABjTQMBwEVRcwcYBUCObLERABAgjAA1M/ZSa9hSi4OlpsnZ2KBOVUsAZlRGl1W0NZ6gSwhQPIAFs7YFL0QS91vRQgdgx2VDAnIegKpQvwAJIoLgooBAGtCJcHizg0TDiz8vhPgIcVXaDJu37ZyDAIjFy4AAiC1JAA0olJwN6nFAACQk/zfQVUuA3t5ELKMT9hpBSRj+HBSggYCIAIEkUoC4PCIQIWHGA8+IStxf0PW15ntP22gc+Wo+BLyQAHECQiAVd+c3Ba8gZ4NOACBaLOhsbIMkAXEmuHsSAvkf4oJaAogH6nEQAzoBIEihUAwAA0AACAObAGcANYAAABaqgMmpWAhiiVyrvNyqFV8tMQ5Iyq6r9Lf7W82i8ILl2cv8zbfdJ5lnPzSnvt/XXPfRR/5pH3xA+u5uS0798EPJ3Fft33w36Wc+8E/7aIB/9fvvb1pE9erNXLB9mkw//cSg8Cnx03VGXDvZnRzKqV9Xkhn7eRHb3wVjHpg19nkZpX9bBU+vnHegrsuQcbW9Bi7oO33h+8SU0Tly/MbeYUuG1cftVz6oNxrW0qH1iezq446fkDFo/rgvTkqt7zmteFzncZ0uxXti09FFF2z+C7CODpjUudOE5NSeb3bv/mbPKcmOEzpWQ3VBgBAuj/AOY3qMm7UvgA8qo3+qvAUBBAX0wADQG4AG+jCKaSxkBe/zvcTG8jRpRZgqhCog4sd++cOo7J+/RdvaaMoc78Ri/PNPSclx6fDvG1Kt3qQFi1rq+5EaavTtt9TVvfvucYsA5wc4oESU+E1ikF9TkrOkIsIH5Fawx7SBNLnMcWlM3skBluCmQNs7GeyFvYVDamsqwhxx18n/+WdxzDgOLU1AqbUlb3m+KOT9+ONvY/7XlrdLS//5v7nN97XHj0VzJpJvz4spq0V7ioXDuv2YrSxtF/KZmvbWfKtorXSh8dfvgGu+ev/nFSaXM6jyuCE/f/EpmuP7Rqu8R98vP/+tXUdrOgKlZP9Q/s+fRF9+3CHZd4EugfPv158me9X7v/6aSMCxMJmIr//65bNXngl7+uiPP5oKx+y27D8trp+psUzMacpm80XlnYeMAct0LynxhNYgaP3dtn8/LBAi+ksr+7NvjjtJV+UXrz0uLXV1x08AZRN1S2A8EaVE5afk/dfGjz//+fdHn36Xdttz2d9/z+bawZ8/slNN1aYtq+ZPGzNuPGdwOsfYflwmHCkPgs5DcKizvdpS/3gEUMW9/lvQvWp1bGTW1fpngC/uSVYAfH3TeSusL8TtlHUD4KAAEHjahk4YpuffGwEBN/dUmpHqdHyJ3Ap8O3UlQ4gCNrMRwLBBKiskL6a+RoBi/9XGlgc8L4/CUejQxaiIyqmomdhktOhfgDbDfaNDb4+yKIPd6IgmzDa0CByijWFmL2dlSRKagTIWXeIU9HDphoZiJeBTjAefHMxDhVSRFUgVcOkW3EGMahYVMFjWHhMluB2wAcbHYqF1LpsDF9C6s+CI2fDgh4wSuFEyGadjXAmIk3CugIRibLIti9ZtC8S4VSqfikGqPaoI122XyRYLBmsOmdiiTpqK1OklUQzpMcZmQRQV4M4oJCMkfRQXK+qvjifUcQd1bRdetW/LWjacYxvcttnVjWg5h0q4xw6rZyejSpZVZ78LzC4uyDNRQ4bymHSTMyM+SZ7D75mg/7YTlmNz7W8T00h0VEiGKB+F7iWYZFvSTiA4LVxttm2ATt5EoUWLJbY4EnLGrfsvEROlHtzlKn3H9VUT5tU/2dt3/EBv7foYzV/W4upyj04woO/gh6Vwwt3WGQAA)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/plus-jakarta-sans-vietnamese-wght-normal-qRpaaN48.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/plus-jakarta-sans-latin-ext-wght-normal-DmpS2jIq.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/plus-jakarta-sans-latin-wght-normal-eXO_dkmS.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Unbounded Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(data:font/woff2;base64,d09GMgABAAAAAAcwABUAAAAADVQAAAbBAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGkQbgR4cLj9IVkFSYD9NVkFSRgZgP1NUQVSBECcqAFwvZBEICoMkgnELFAAwhH4BNgIkAyIEIAWGEAdnDAcboAsonoWxMy2MW9VSU/H2d24ggnj6P7/qdF8kHtj4XCsDah+E/KT39YIFcHcr5mdFZwLNDw9CeW4KlnBLVwQRet6nWJGSNRWvjZZM5AF9/V+YzdmiNbWZhBUUSOGWSLhW2RoXvEtYlxCEfCMrFAA6BuFam7oKRUZVCFWhRR/qJMlMiCgVZ/4ca0sETSHYgDJIJKezg6AEeH4/UIDkWQgqQABAB41AABe1VKK6dOsdhehnpalC9DfR1iEaDRCEADJ7qqmDPyCAYODEgeBAUIADRQ2tgB4qkWgAgOBp5BnH2tUEgA3ErCKtimIziMYx+tZRkDo+B2CcYroAUAMQQMOC/DExNOyf1AIEqIEEKgEKoAEFyK2JYdUjqxX9gAAwZpyto8zKVlMAICtmCHZvvscvU9uhetlltjPXxFCpcgAT1C41AqC3NxEZR3GGgPFsQPEn9Dv9AAEV1gUdEnSDES/lADn+6DGoZioeqIBCEBwIUIQ/UAa5fLpoEwZQQLIclVoNmiUiAMTkNhAAsaQOgAYUSg6A+hsQAHFIasTfqUaMdhH93bqCn0dv0Y1Mxwz/rMEkngeFGyecLPOg2jTgjVHHlnFn1ePPoBCvIU0PgI97z1hU0OQ8V6Iq/BwEUU8EQ4OB4FQdyadBEOByAhRAIhThj4OXDnAXcgDG2hAxxIQMtyzUgY0DcCA1wwnPy+biZg5xg64AiKelqxEkCD8ATgAKAdzAdMBJoAx4e5naGUU9jSAGahwNjTq+8W7DtfwYMsuPz6g1XPyMe4OHcM9wzZ544OVL2fjTo1fDhz95JRtfunY9r+B6JRd3737xgg3f338+ZMjD5wE2vLjmvqrsfi7KpklBNhwDNs4hLtfZB1nVo/LtXbteDo7bGL+x9LnOu7gSi0s45CJc/mquZ+53Had/3dvtr8Ybttd9ifzjnXq4Zb+pTblf584tP9A9sdAIX89W9cqWOy8urXS6243Og4UTLSdNOtqi74T6Wi+zp5Xr6RpTqLOrX2Wp2FTquoyMtjObjK4jpZMt84p3bd218fcnDp+IoMbXTl0+vgP56caMH6fVqeP+OKNQ34WDI8PmIJDVIAAbW7oRW9vBIzQAYINeo695N38DAQQF1BAAQB1AaXV6TEEMP0RLzQ5ctUHhwY/gB6cDpZRWWNvhvV7xtTdCTx62RTr+t9EROf52+4hqwKoHM4/P3FgXpe6yLMD76VNExDcBX1jIH3Yp7lSX+fKlzCapUmWPbtYsN7eRA47ZYTVbbEp/xcTqp40a3d8kgcC2lmDn2kCI59VnWx1NAZbGgyDNV1vAFJu5FO3miyhkCFmswIrSVn+m4cGofr9T0gtXmTw09dO1a16PkZUSH/IBkrx9G5qSFfLgxvTvUt01arz+FBpnGCEhx00R2RZKkZ2alp0fzE1LDbpKNhShcYSQv0hQG1qZDr/fmZca/ghYVGJxlLKSkix/drZ/c6tCgVkxImp4WHxugc/XJo8s3HRlyqfYLHfRckwVJGlsXycqqOGwidPXFPr25z/Nmxau/p9Rr57aFGS1RW4u7iIFAw1tFS5Mxb/8VkR5k5cXVEauSXY2pXVWSkRkklGk1rBYI0tr8nLTSpb8G+5yhXMADzyTaevXgL1Zp6VZlh0QM3fsx6LChf9nUFEe5Rfxel+//BCekJby74034cm1Sj0pKdGfMTg6JQXHolu80R26VNVeFRGjTGrML/a3KLdYsfRSwdIdF/wS97oFBJCflu4t3XhyfFibNIfWkQCf9r4tAJ9v5YH5D/L/t64YRwELBYDAz9xlvaUoc/8UQJDdHboro2Mz9jFInPDh9H5qASpKQgBOzmMzgG87VkOtVdB9GjGcwLdyIEJCoawjhU8WkKZZWpFBpZQgk2Guk0Ul58N9NCPHEwMP48ikiG6ycNGBbHyygBx4aEJOCsggFw7KkJtCAo/uwQV0olqyQtFmHZtpSTNMxXktRyAaKYo+cK9zaHpJBCK7ld6ZnAkoolP/ZzYvSzUPD8sKk8TLZmFYJCoGZhJ4DGjXa4xuGebQcRBOoWGIwKFaYhqHmCwSTJeiCKMCq0gNAc+GYSrLDBajCqNYJQYHcZXJJ0A4xapUqMKZ6z2NlL69lfVr0u8Nccx9YwPV6tkC81rPZI+nqPdmFSuWYpQISRkjH5QNMRmyUjejicO9FXMknCLnOWQIJNp0jmWMFZiWYyRwhQrhmdU9JWEPp+eCXCSYbnA0cgpOoIp7UWjRYogpltVxkolc5Ld0nsQ2aGrgvbG4QXMT38TJjo3+3UW3hhd38NKijMZseaj+FQn2vbEXAA==)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Unbounded Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/unbounded-cyrillic-wght-normal-C627f1f8.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Unbounded Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/unbounded-vietnamese-wght-normal-rat7GD3o.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Unbounded Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/unbounded-latin-ext-wght-normal-D6H-S6MW.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Unbounded Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/unbounded-latin-wght-normal-D5afBTBx.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--font-body:system-ui, sans-serif;--font-display:var(--font-body);font-family:var(--font-body);color:#263b32;font-synthesis:none;--bg:#f6f7f3;--surface:#fff;--text:#263b32;--muted:#5b695f;--border:#e2e8df;--green:#285e43;--soft:#edf2e9;--hero:#e5eddd;--shadow:0 16px 55px #1638210c;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--safe-right:env(safe-area-inset-right,0px);--chart-past:#86a992;--deload:#2f5d7c;--deload-soft:#e6eef4;background:#f6f7f3}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}*{box-sizing:border-box}html{touch-action:manipulation}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:wait;opacity:.5}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline-offset:3px;outline:3px solid #8aaa61}a{color:var(--green)}h1,h2,h3,h4,p{margin-top:0}h1{margin:8px 0 10px;font-size:clamp(28px,3vw,39px);font-weight:700}h2{font-size:21px;font-weight:700}h3{font-size:18px}p{line-height:1.65}small{line-height:1.5}.app-shell{min-height:100vh;display:flex}.sidebar{background:var(--surface);border-right:1px solid var(--border);z-index:10;flex-direction:column;width:248px;padding:35px 22px 20px;display:flex;position:fixed;inset:0 auto 0 0}.brand{color:var(--text);font-family:var(--font-display);align-items:center;gap:11px;padding:0 7px;font-size:21px;font-weight:800;text-decoration:none;display:flex}.brand-mark{background:var(--green);color:#fff;border-radius:13px;place-items:center;width:40px;height:40px;display:grid}.brand small{font-family:var(--font-body);letter-spacing:2px;color:var(--muted);margin-top:3px;font-size:8px;font-weight:600;display:block}.sidebar nav{flex-direction:column;gap:7px;margin-top:49px;display:flex}.nav-item{text-align:left;color:var(--muted);background:0 0;border:0;border-radius:10px;align-items:center;gap:13px;min-height:48px;padding:14px 15px;font-size:14px;font-weight:500;display:flex}.nav-item.active{background:var(--soft);color:var(--green);font-weight:700}.nav-item:hover{background:var(--soft)}.nav-dot{background:#84a763;border-radius:50%;width:6px;height:6px;margin-left:auto}.sidebar-bottom{margin-top:auto;padding-top:30px}.install-card{background:var(--soft);border-radius:13px;padding:20px 17px;font-size:12px}.install-card>svg{margin-bottom:12px;display:block}.install-card strong{font-size:13px;display:block}.install-card p{color:var(--muted);margin:8px 0}.profile-button{text-align:left;color:var(--text);background:0 0;border:0;align-items:center;gap:10px;width:100%;padding:24px 0 0;font-size:12px;display:flex}.profile-button small{color:var(--muted);font-size:10px;display:block}.profile-button>svg{margin-left:auto}.avatar{color:#63553f;background:#e7dfcf;border-radius:50%;flex-shrink:0;place-items:center;width:34px;height:34px;font-weight:700;display:grid}.main-shell{flex:1;min-width:0;margin-left:248px}.topbar{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:15px;height:92px;padding:0 45px;display:flex}.date-label{color:var(--muted);font-size:12px}.mobile-brand,.mobile-settings-button,.banner.install-banner{display:none}.install-banner p{color:var(--muted);margin:3px 0 0}.row{align-items:center;gap:12px;display:flex}.wrap{flex-wrap:wrap}.small{font-size:11px}.status-dot{background:#76a36a;border-radius:50%;width:6px;height:6px}.button{background:var(--green);color:#fff;white-space:nowrap;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:10px;min-height:44px;padding:12px 20px;font-size:12px;font-weight:700;display:inline-flex}.button:hover{filter:brightness(.95)}.text-button{color:var(--green);background:0 0;border:0;justify-content:center;align-items:center;gap:7px;min-height:44px;padding:5px 0;font-size:12px;font-weight:700;display:inline-flex}.icon-button{width:44px;height:44px;color:var(--muted);background:0 0;border:0;border-radius:8px;flex-shrink:0;place-items:center;display:inline-grid}.icon-button:hover{background:var(--soft)}main{max-width:1510px;margin:0 auto;padding:36px 45px 20px}.page-title{justify-content:space-between;align-items:center;gap:25px;margin-bottom:27px;display:flex}.eyebrow{letter-spacing:2.1px;color:var(--muted);font-size:9px;font-weight:700}.page-title p{color:var(--muted);max-width:620px;margin:0;font-size:13px}.hero{background:var(--hero);border:1px solid #dce5d4;border-radius:15px;min-height:306px;margin-bottom:23px;padding:35px 36px;position:relative;overflow:hidden}.hero>div{z-index:1;max-width:55%;position:relative}.tag{letter-spacing:.45px;background:var(--soft);color:var(--green);border-radius:5px;align-items:center;gap:4px;padding:5px 8px;font-size:9px;font-weight:600;line-height:1.5;display:inline-flex}.hero .tag{letter-spacing:1.1px;background:#ffffff61;font-size:8px}.hero h2{letter-spacing:-1.7px;margin:17px 0 12px;font-size:38px;font-weight:600;line-height:1.14}.hero p{color:#536647;max-width:340px;margin-bottom:22px;font-size:12px}.hero-art{color:#879d71;width:46%;height:100%;position:absolute;bottom:0;right:-15px}.stats-grid{grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:27px;display:grid}.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:22px;position:relative}.stat-card>svg{color:#95a58d;position:absolute;top:25px;right:22px}.stat-card strong{font-family:var(--font-display);letter-spacing:-1px;margin-bottom:9px;font-size:29px;display:block}.stat-card span{color:var(--muted);font-size:11px}.dashboard-grid{grid-template-columns:1.55fr 1fr;gap:23px;display:grid}.panel{background:var(--surface);border:1px solid var(--border);border-radius:13px;min-width:0;margin-bottom:23px;padding:25px}.section-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.section-heading h2{margin:0;font-size:17px}.panel h2{align-items:center;gap:8px;display:flex}.empty{text-align:center;color:var(--muted);padding:35px 20px}.empty-icon{border:1px dashed var(--border);color:#91a285;border-radius:50%;place-items:center;width:58px;height:58px;margin:0 auto 15px;display:grid}.empty h3{color:var(--text);margin:0 0 8px;font-size:16px}.empty p{max-width:370px;margin:0 auto 17px;font-size:12px}.coach-teaser{background:#eeeee5;padding:29px}.coach-icon{color:#59623f;background:#dedfcf;border-radius:12px;place-items:center;width:39px;height:39px;margin-bottom:20px;display:grid}.coach-teaser .tag{letter-spacing:1.4px;color:#59623f;background:0 0;padding:0;font-size:8px}.coach-teaser h2{margin:14px 0 12px;font-size:24px;line-height:1.35}.coach-teaser p{color:#5e6652;font-size:12px}.site-footer{max-width:1510px;color:var(--muted);justify-content:space-between;margin:auto;padding:0 45px 26px;font-size:10px;display:flex}.site-footer a{color:var(--muted)}.muted{color:var(--muted);font-size:12px}.session-card{border:0;border-bottom:1px solid var(--border);text-align:left;width:100%;color:var(--text);background:0 0;align-items:center;gap:15px;padding:18px 0;display:flex}.session-card:last-child{border-bottom:0}.session-card>span{flex:1}.session-card strong{font-size:13px;display:block}.session-card small{color:var(--muted);margin-top:4px;font-size:10px;display:block}.session-date{background:var(--soft);text-align:center;border-radius:8px;flex-shrink:0;width:45px;padding:9px 5px}.session-date strong{font-size:19px}.session-date small{font-size:8px}.facet-line{color:var(--muted);margin-top:6px;font-size:9px;display:block}.calendar-toolbar{align-items:center;gap:16px;margin-bottom:20px;display:flex}.calendar-toolbar h2{margin:0;font-size:17px}.calendar-grid{border:1px solid var(--border);background:var(--surface);border-radius:13px;grid-template-columns:repeat(7,1fr);margin-bottom:25px;display:grid;overflow:hidden}.calendar-day{border-right:1px solid var(--border);min-height:310px;padding:12px 9px}.calendar-day:last-child{border:0}.calendar-day header{text-align:center;padding-bottom:20px}.calendar-day header span{color:var(--muted);text-transform:uppercase;font-size:10px;display:block}.calendar-day header strong{margin-top:8px;font-size:24px;display:block}.calendar-session{background:var(--hero);border:0;border-left:3px solid var(--green);text-align:left;width:100%;color:var(--text);border-radius:5px;margin-bottom:10px;padding:10px 8px}.calendar-session strong,.calendar-session span,.calendar-session small{margin-bottom:4px;font-size:10px;line-height:1.5;display:block}.calendar-session strong{font-size:11px}.calendar-session.cancelled,.calendar-session.skipped{opacity:.55}.available-window{border:1px dashed var(--border);color:var(--muted);border-radius:5px;padding:8px 5px;font-size:9px;line-height:1.7}.available-window.partial{background:repeating-linear-gradient(135deg, transparent 0 6px, color-mix(in srgb, var(--green) 12%, transparent) 6px 12px);border-style:solid}.tabs{border-bottom:1px solid var(--border);flex-wrap:wrap;gap:7px;margin:0 0 24px;display:flex}.tabs button{color:var(--muted);text-transform:capitalize;background:0 0;border:0;min-height:48px;padding:10px 20px;font-size:13px}.tabs button.active{color:var(--green);border-bottom:2px solid var(--green);font-weight:700}.library-grid{grid-template-columns:repeat(3,1fr);gap:22px;display:grid}.training-card{border:1px solid var(--border);background:var(--surface);border-radius:13px;overflow:hidden}.card-art{color:#82956b;background:#e4eadd;justify-content:space-between;align-items:center;height:130px;padding:30px;display:flex}.card-art span{font-family:var(--font-display);opacity:.45;font-size:40px}.art-1{color:#a49679;background:#e9e4d9}.art-2{color:#76968e;background:#dfe7e5}.art-3{color:#98879a;background:#e8e3e8}.training-card-body{padding:23px}.training-card p{color:var(--muted);font-size:12px}.training-card small{color:var(--muted);font-size:11px}.settings-grid{grid-template-columns:1fr 1fr;gap:22px;display:grid}.settings-grid .panel{margin:0}.full-width{grid-column:1/-1}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px;display:grid}.field{color:var(--text);flex-direction:column;flex:1;gap:7px;min-width:0;margin-bottom:17px;font-size:11px;display:flex}.field>span{font-weight:600}.field small{color:var(--muted);font-size:10px}input,select,textarea{border:1px solid var(--border);background:var(--surface);width:100%;min-height:44px;color:var(--text);border-radius:7px;padding:10px 12px;font-size:13px}textarea{resize:vertical;min-height:90px;line-height:1.6}input[type=checkbox]{width:18px;height:18px;min-height:18px;accent-color:var(--green);flex-shrink:0}.checkbox,.check-list label{align-items:center;gap:10px;min-height:44px;margin-bottom:10px;font-size:12px;line-height:1.65;display:flex}.check-list{margin-top:20px}.location-card{border-top:1px solid var(--border);padding:20px 0}.equipment-chips{flex-wrap:wrap;gap:7px;margin-bottom:18px;display:flex}.equipment-chips label{border:1px solid var(--border);cursor:pointer;border-radius:7px;align-items:center;gap:5px;min-height:44px;padding:8px;font-size:10px;display:flex}.equipment-chips .selected{background:var(--soft);border-color:var(--green)}.equipment-chips input{width:13px;height:13px;min-height:13px}.availability-row{border:1px solid var(--border);border-radius:16px;margin:14px 0;padding:8px 18px 2px}.availability-head{justify-content:space-between;align-items:center;gap:12px;font-size:14px;display:flex}.availability-main{grid-template-columns:repeat(4,minmax(0,1fr));gap:0 14px;display:grid}.availability-extra{grid-template-columns:minmax(0,2fr) minmax(0,1fr);align-items:start;gap:0 14px;display:grid}.availability-locations{border:0;min-width:0;margin:0;padding:0}.availability-locations legend{margin-bottom:7px;padding:0;font-size:11px;font-weight:600}.consent small{max-width:800px;color:var(--muted);margin-top:7px;display:block}.sticky-save{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);z-index:2;border-radius:10px;justify-content:space-between;align-items:center;margin-top:20px;padding:15px 20px;display:flex;position:sticky;bottom:0}.sticky-save>span{color:var(--muted);font-size:11px}.modal{color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:16px;width:min(480px,100% - 30px);max-height:90dvh;padding:26px;box-shadow:0 20px 80px #0003}.modal.wide{width:min(780px,100% - 30px)}.modal header{justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px;display:flex}.modal header h2{margin:0;font-size:22px}.form-footer{border-top:1px solid var(--border);justify-content:flex-end;gap:12px;margin:25px 0 10px;padding-top:20px;display:flex}.divider{text-align:center;border-top:1px solid var(--border);color:var(--muted);margin:23px 0 18px;padding-top:15px;font-size:11px}.activity-editor{border:1px solid var(--border);border-radius:8px;margin:20px 0;padding:16px}.activity-editor summary{cursor:pointer;min-height:44px;font-weight:600}.activity-editor h4{margin-top:20px;font-size:14px}.error,.notice,.banner{border:1px solid var(--border);background:var(--soft);border-radius:9px;justify-content:space-between;align-items:center;gap:15px;margin-bottom:20px;padding:14px 18px;font-size:12px;line-height:1.65;display:flex}.error{color:#8b3426;background:#faece6;border-color:#e8c7bd}.danger{color:#a74738}.chat-panel{max-width:900px;margin-inline:auto}.chat-messages{min-height:300px;max-height:60vh;padding:10px;overflow:auto}.coach-typing{color:var(--muted);align-items:center;gap:9px;font-size:12px;display:flex}.typing-dots{gap:4px;display:inline-flex}.typing-dots span{background:var(--green);border-radius:50%;width:6px;height:6px;animation:1.1s ease-in-out infinite typing-bounce}.typing-dots span:nth-child(2){animation-delay:.15s}.typing-dots span:nth-child(3){animation-delay:.3s}@keyframes typing-bounce{0%,60%,to{opacity:.5;transform:translateY(0)}30%{opacity:1;transform:translateY(-4px)}}@media (prefers-reduced-motion:reduce){.typing-dots span{animation:none}}.chat-message{background:var(--soft);border-radius:10px;max-width:85%;margin:15px 0;padding:18px}.chat-message.user{background:var(--hero);margin-left:auto}.chat-message small{letter-spacing:1px;color:var(--muted);font-size:9px}.chat-message p{white-space:pre-wrap;overflow-wrap:anywhere;margin:9px 0 0;font-size:13px}.chat-compose{align-items:flex-end;gap:12px;margin:20px 0 8px;display:flex}.chat-send-error{overflow-wrap:anywhere}.chat-compose textarea{min-height:70px}.chat-compose button{height:44px;margin-bottom:3px}.calendar-actions{gap:10px;margin:4px 0 8px}.calendar-actions .button{text-decoration:none}.modal-actions{margin-top:24px}.activity-list{gap:12px;margin-top:12px;display:grid}.activity-card{border:1px solid var(--border);border-left:4px solid var(--green);background:var(--soft);border-radius:11px;min-width:0;padding:16px 18px}.session-activities{gap:20px}.activity-card.clickable{cursor:pointer;transition:border-color .15s}.activity-card.clickable:hover{border-color:var(--green)}.activity-title{color:var(--text);letter-spacing:-.025em;margin:0 0 8px;font-size:17px;font-weight:800}.activity-description{color:var(--muted);margin:0 0 12px;font-size:13px}.activity-detail{border-top:1px solid var(--border);overflow-wrap:anywhere;margin-top:10px;padding-top:10px}.activity-label{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin-bottom:5px;font-size:10px;font-weight:800;display:block}.activity-source{margin:10px 10px 0 0;font-size:12px;display:inline-block}pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:11px}.code-editor{min-height:500px;font-family:monospace;font-size:12px}.progress-grid{grid-template-columns:repeat(2,1fr);gap:22px;display:grid}.goal-row,.measurement-row{border:0;border-bottom:1px solid var(--border);width:100%;color:var(--text);text-align:left;background:0 0;align-items:center;gap:16px;min-height:44px;padding:15px 0;font-size:12px;display:flex}.goal-row>span:first-of-type{flex:1}.goal-row strong,.goal-row small{display:block}.goal-row small{color:var(--muted);margin-top:6px}.measurement-row{justify-content:space-between}.trend-chart{width:100%;height:150px;color:var(--green)}.privacy{max-width:800px;margin:50px auto}.privacy h1{margin:20px 0}.privacy h2{margin-top:30px}.privacy p{font-size:14px}.contact-form{gap:14px;max-width:520px;display:grid}.contact-form label{gap:6px;font-weight:700;display:grid}.contact-form button{justify-self:start}.verification .button{margin:5px}@media (prefers-color-scheme:dark){:root{--bg:#151c18;--surface:#1c2520;--text:#e0e9dd;--muted:#a1b09e;--border:#334036;--green:#99c58d;--soft:#29372b;--hero:#2d412d;--chart-past:#587a56;--deload:#9cc3dd;--deload-soft:#1f2d36;--shadow:0 16px 55px #0002;background:var(--bg);color:var(--text)}.button{color:#172619;background:#9ac68e}.button.secondary{color:var(--text)}.brand-mark{color:#172619}.hero{border-color:var(--border)}.hero p{color:#c0cdb7}.hero-art{color:#769469}.hero .tag{background:#ffffff10}.coach-teaser{background:#2b3024}.coach-teaser p,.coach-teaser .tag{color:#b6c1a8}.coach-icon{color:#c8d7b8;background:#3e4933}.card-art{color:#91ab7a;background:#30412e}.art-1{color:#b9ad88;background:#433e30}.art-2{color:#91b7a9;background:#2c403a}.art-3{color:#b69dbd;background:#3c3240}.avatar{color:#e1d7c2;background:#504638}.error{color:#f4b9aa;background:#482b27;border-color:#694239}.danger{color:#f4a797}.tag{color:#bcd6af}}@media (width>=1500px){.hero{min-height:330px}.hero h2{font-size:43px}.hero-art{width:52%}}@media (width<=1100px){.sidebar{width:210px;padding-inline:16px}.main-shell{margin-left:210px}.topbar{padding-inline:28px}main{padding:30px 28px}.site-footer{padding-inline:28px}.library-grid{grid-template-columns:repeat(2,1fr)}.settings-grid{grid-template-columns:1fr}.dashboard-grid{grid-template-columns:1fr 1fr}.calendar-grid{grid-template-columns:repeat(4,1fr)}.calendar-day{border-bottom:1px solid var(--border)}.hero>div{max-width:66%}}@media (width<=760px){.sidebar{width:100%;height:calc(54px + var(--nav-bottom));padding:0 4px var(--nav-bottom);border-right:0;border-top:1px solid var(--border);position:fixed;inset:auto 0 0}.sidebar,.main-shell{--nav-bottom:var(--safe-bottom)}@supports (-webkit-touch-callout:none){.sidebar,.main-shell{--nav-bottom:calc(var(--safe-bottom) / 2)}@media (display-mode:browser){.sidebar,.main-shell{--safe-bottom:0px}}}.sidebar .brand,.sidebar-bottom{display:none}.sidebar nav{flex-direction:row;justify-content:space-around;gap:0;margin:0}.nav-item{border-radius:0;flex-direction:column;flex:1;gap:5px;min-width:48px;min-height:54px;padding:6px 3px;font-size:9px;background:0 0!important}.nav-item svg{width:19px;height:19px}.nav-item.active{color:var(--green)}.nav-dot{display:none}.main-shell{padding-bottom:calc(54px + var(--nav-bottom));margin-left:0}.topbar{height:calc(64px + var(--safe-top));padding:var(--safe-top) 20px 0}.mobile-brand{font-size:17px;font-family:var(--font-display);align-items:center;gap:7px;font-weight:800;display:flex}.mobile-brand svg{color:var(--green);width:23px}.mobile-settings-button{display:inline-grid}.banner.install-banner{justify-content:space-between;align-items:center;gap:12px;display:flex}.date-label,.topbar .small,.topbar .status-dot{display:none}.topbar .button{padding:10px 12px;font-size:11px}main{padding:27px 19px 15px}.page-title{margin-bottom:23px;display:block}.page-title>.button{margin-top:18px}.page-title p{font-size:12px}.eyebrow{font-size:8px}h1{font-size:29px}.hero{border-radius:12px;min-height:300px;padding:28px 24px}.hero>div{max-width:86%}.hero h2{font-size:34px}.hero p{max-width:235px}.hero-art{opacity:.55;width:55%;right:-60px}.hero .button{font-size:11px}.stats-grid{gap:8px}.stat-card{padding:16px 12px}.stat-card>svg{width:15px;height:15px;margin-bottom:7px;position:static}.stat-card strong{letter-spacing:-.6px;font-size:22px}.stat-card span{font-size:9px;line-height:1.5;display:block}.dashboard-grid{grid-template-columns:1fr;gap:0}.panel{padding:21px}.coach-teaser{padding:25px}.site-footer{padding:0 20px 25px}.library-grid{grid-template-columns:1fr;gap:14px}.training-card{grid-template-columns:95px 1fr;display:grid}.card-art{flex-direction:column;justify-content:center;gap:20px;height:100%;padding:15px}.card-art svg{width:38px}.card-art span{font-size:28px}.training-card-body{padding:20px}.training-card h2{font-size:17px}.training-card p{font-size:11px}.tabs button{padding-inline:14px;font-size:12px}.calendar-grid{background:0 0;border:0;border-radius:0;grid-template-columns:1fr;gap:12px}.calendar-day{background:var(--surface);border-radius:10px;grid-template-columns:50px 1fr;gap:10px;min-height:90px;padding:14px;display:grid;border:1px solid var(--border)!important}.calendar-day header{grid-row:span 4;padding:2px 0}.calendar-day header strong{font-size:22px}.calendar-session strong{font-size:13px}.calendar-session small{font-size:11px}.calendar-session .tag{display:inline-flex}.available-window{font-size:10px}.calendar-toolbar{gap:8px}.calendar-toolbar h2{font-size:13px}.calendar-toolbar .button{padding:10px}.calendar-toolbar .text-button{font-size:10px}.form-grid,.settings-grid,.progress-grid{grid-template-columns:1fr;gap:0 12px}.form-grid>*,.settings-grid>*{grid-column:1/-1}.row.wrap:has(>input,>select,>.field){flex-direction:column;align-items:stretch}.field{font-size:11px}input,select,textarea{font-size:16px}.availability-row{padding:6px 14px 0}.availability-main{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px}.availability-extra{grid-template-columns:1fr}.availability-main input[type=time]{padding-inline:8px}.sticky-save{bottom:calc(54px + var(--nav-bottom));gap:10px;padding:12px}.sticky-save>span{max-width:120px;font-size:9px}.modal{max-height:88dvh;padding:20px}.modal header h2{font-size:20px}.chat-panel{padding:13px}.chat-message{max-width:94%;padding:14px}.chat-compose{gap:7px}.chat-compose .button{padding:12px}.chat-panel .section-heading{align-items:flex-start}.chat-panel .section-heading small{font-size:9px}.progress-grid{grid-template-columns:1fr;gap:0}.privacy{margin:20px}.banner{align-items:flex-start}.session-card strong{font-size:12px}.session-card small{font-size:10px}.form-footer{background:var(--surface);padding:12px 0;position:sticky;bottom:-20px}.settings-grid{gap:16px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.card-art span{opacity:1;color:var(--text)}.metric-summary{grid-template-columns:minmax(100px,1fr) 2fr;gap:8px 15px;margin:8px 0 18px;padding:10px 0;font-size:12px;display:grid}.metric-summary dt{text-transform:capitalize;color:var(--muted)}.metric-summary dd{overflow-wrap:anywhere;margin:0}.metric-summary .metric-summary{margin:0;padding:0}.editor-fields{border-top:1px solid var(--border);max-width:850px;margin:25px 0;padding-top:25px}.chat-markdown{overflow-wrap:anywhere;min-width:0;font-size:13px;line-height:1.6}.chat-markdown>:first-child{margin-top:8px}.chat-markdown>:last-child{margin-bottom:0}.chat-markdown h1,.chat-markdown h2,.chat-markdown h3,.chat-markdown h4{margin:16px 0 6px;font-size:1.1em}.chat-markdown ul,.chat-markdown ol{margin:10px 0;padding-left:1.5em}.chat-markdown li,.chat-markdown li>p{margin:4px 0}.chat-markdown a{color:var(--green);text-decoration:underline}.chat-markdown blockquote{border-left:3px solid var(--green);color:var(--muted);margin:12px 0;padding-left:12px}.chat-markdown pre,.chat-table{max-width:100%;overflow-x:auto}.chat-markdown pre{background:var(--surface);border-radius:6px;padding:10px}.chat-markdown code{font-size:.9em}.chat-markdown table{border-collapse:collapse;font-size:12px}.chat-markdown th,.chat-markdown td{border:1px solid var(--border);text-align:left;padding:6px 10px}.onboarding{max-width:760px;margin:0 auto}.onboarding-progress{background:var(--soft);border-radius:999px;height:6px;margin:0 0 20px;overflow:hidden}.onboarding-progress span{background:var(--green);height:100%;transition:width .3s;display:block}.onboarding-panel{gap:16px;display:grid}.tag.danger{color:#9c2f1f;background:#fbe9e7}@media (prefers-color-scheme:dark){.tag.danger{color:#ffb4a6;background:#4a211b}}.plan-building{text-align:center;justify-items:center;gap:8px;padding:12px 0;display:grid}.plan-building svg{width:150px;height:auto}.plan-building .wall{fill:var(--soft)}.plan-building .hold{fill:var(--border);animation:3.6s ease-in-out infinite hold-glow}.plan-building .climber{stroke:var(--green);fill:var(--green);stroke-width:3px;stroke-linecap:round;animation:3.6s ease-in-out infinite climb}.plan-building-text{font-weight:600;animation:.5s fade-in}@keyframes hold-glow{0%,to{fill:var(--border)}10%,20%{fill:var(--green)}}@keyframes climb{0%{transform:translate(60px,150px)}17%{transform:translate(104px,124px)}34%{transform:translate(70px,96px)}51%{transform:translate(118px,70px)}68%{transform:translate(82px,42px)}85%,92%{transform:translate(112px,16px)rotate(-8deg)}to{opacity:0;transform:translate(60px,150px)}}@keyframes fade-in{0%{opacity:0;transform:translateY(4px)}}@media (prefers-reduced-motion:reduce){.plan-building .climber,.plan-building .hold,.plan-building-text{animation:none}.plan-building .climber{transform:translate(82px,42px)}}.structure-list{gap:8px;margin:8px 0 18px;padding:0;list-style:none;display:grid}.structure-list li{border:1px solid var(--border);background:var(--surface);border-radius:12px;grid-template-columns:76px 1fr;align-items:start;gap:12px;padding:10px 12px;display:grid}.structure-list li>span:last-child{gap:2px;display:grid}.structure-list small{color:var(--muted);font-size:12px}.structure-minutes{color:var(--green);font-size:13px;font-weight:700}.link-button{font:inherit;color:inherit;text-align:left;text-decoration:underline;-webkit-text-decoration-color:var(--border);text-decoration-color:var(--border);text-underline-offset:4px;background:0 0;border:0;min-height:32px;padding:0}.link-button:hover{text-decoration-color:currentColor}.numbers-line{color:var(--muted);flex-wrap:wrap;gap:4px 14px;margin:4px 0 8px;font-size:12px;display:flex}.numbers-line span{align-items:center;gap:5px;display:inline-flex}.numbers-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px;display:grid}.numbers-grid .full{grid-column:1/-1;margin:0}.number-card{border:1px solid var(--border);background:var(--soft);border-radius:14px;align-content:start;gap:4px;padding:14px;display:grid}.number-card small{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;align-items:center;gap:6px;font-size:11px;font-weight:700;display:inline-flex}.number-card strong{font-size:16px}.number-card.best{border-color:var(--green)}.exercise-view section{margin:22px 0 0}.exercise-view h3{align-items:center;gap:8px;margin-bottom:8px;font-size:16px;display:flex}.exercise-view .lead{margin:12px 0 6px;font-size:15px}.steps-list{counter-reset:step;gap:8px;padding-left:0;list-style:none;display:grid}.steps-list li{counter-increment:step;grid-template-columns:28px 1fr;gap:10px;line-height:1.5;display:grid}.steps-list li:before{content:counter(step);background:var(--green);width:26px;height:26px;color:var(--surface);border-radius:50%;place-items:center;font-size:12px;font-weight:700;display:grid}.cue-list{flex-wrap:wrap;gap:8px;padding:0;list-style:none;display:flex}.cue-list li{background:var(--soft);border-radius:999px;padding:6px 12px;font-size:13px}.coach-note,.safety-note{border-left:4px solid var(--green);background:var(--soft);border-radius:14px;padding:14px 16px}.safety-note{border-left-color:#b4632a}.coach-note p,.safety-note p{margin:0;line-height:1.55}.best-row .best-value{text-align:right;justify-items:end;gap:2px;display:grid}.best-row .best-value small{margin:0;font-weight:700}.best-row>span:first-of-type{overflow-wrap:anywhere;min-width:0}.best-row .best-value{overflow-wrap:anywhere;flex:0 auto;max-width:45%}@media (width<=480px){.best-row{flex-direction:column;align-items:stretch;gap:8px}.best-row .best-value{text-align:left;justify-items:start;max-width:none}}.log-targets{background:var(--soft);border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 12px;margin-bottom:10px;padding:6px 12px;font-size:13px;display:flex}.log-activity .section-heading{margin-bottom:0}.log-activity-footer{align-items:center;gap:8px 16px}.log-activity-footer .checkbox{margin:0}.metric-grade{grid-column:1/-1}.log-form .activity-list{margin-bottom:16px}.library-toolbar{align-items:center;gap:12px 16px;margin:0 0 18px}.chat-compose{position:relative}.chat-actions{align-items:flex-end;gap:6px;display:flex}.voice-button{border:1px solid var(--border);background:var(--surface);color:var(--green)}.voice-button.listening{color:#fff;background:#b4632a;border-color:#b4632a;animation:1.4s ease-in-out infinite voice-pulse}@keyframes voice-pulse{50%{box-shadow:0 0 0 6px #b4632a33}}.voice-status{color:var(--muted);font-size:12px;position:absolute;bottom:-22px;left:0}.voice-error{margin-top:26px}html.coach-lock,html.coach-lock body{overscroll-behavior:none;height:100%;overflow:hidden}.main-shell.coach-mode{height:100vh;height:var(--vv-height,100dvh);overscroll-behavior:none;background:var(--bg);flex-direction:column;margin-left:0;display:flex;position:fixed;top:0;left:248px;right:0;overflow:hidden}.main-shell.coach-mode>.topbar{flex-shrink:0}.main-shell.coach-mode>main{flex-direction:column;flex:1;width:100%;min-height:0;padding-top:16px;padding-bottom:0;display:flex}.main-shell.coach-mode>main>*{flex-shrink:0}.main-shell.coach-mode>main>.coach-page{flex:auto}.coach-page{flex-direction:column;width:100%;max-width:860px;min-height:0;margin:0 auto;display:flex}.coach-header{border-bottom:1px solid var(--border);align-items:center;gap:11px;padding-bottom:12px;display:flex}.coach-avatar{background:var(--hero);width:36px;height:36px;color:var(--green);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.coach-header-text{flex:1;min-width:0}.coach-header-text strong,.coach-header-text small{display:block}.coach-header-text strong{font-family:var(--font-display);font-size:16px}.coach-header-text small{color:var(--muted);font-size:11px}.coach-clear{color:var(--muted);align-items:center;gap:5px;min-height:36px;font-size:12px;display:inline-flex}.coach-page .chat-messages{overscroll-behavior:contain;flex:auto;min-height:0;max-height:none;padding:6px 2px 10px;overflow-y:auto}.coach-page .chat-message{border-radius:16px;margin:12px 0;padding:14px 16px}.coach-page .chat-message.user{border-bottom-right-radius:5px}.coach-page .chat-message.assistant{border-bottom-left-radius:5px}.coach-page .chat-report{color:var(--muted);gap:5px;margin:4px 0 -12px;padding:0;font-size:12px;font-weight:600}.coach-page .chat-reported{margin:8px 0 0;font-size:12px}.coach-welcome{text-align:center;padding:40px 8px 12px}.coach-welcome h2{margin:0 0 6px}.coach-suggestions{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:18px;display:flex}.coach-suggestions button{border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;border-radius:999px;min-height:40px;padding:9px 14px;font-size:13px}.coach-suggestions button:hover{border-color:var(--green)}.coach-footer{border-top:1px solid var(--border);flex-shrink:0;padding:10px 0 14px}.coach-footer .error{margin:0 0 8px}.coach-page .chat-compose{margin:0;display:block;position:relative}.compose-row{align-items:flex-end;gap:8px;display:flex}.coach-page .chat-compose textarea{resize:none;border-radius:14px;flex:1;min-width:0;min-height:46px;max-height:160px;padding:10px 14px;line-height:22px}.coach-page .chat-compose .voice-button{border-radius:14px;flex-shrink:0;width:46px;height:46px;margin:0}.compose-actions{justify-content:space-between;align-items:center;gap:10px;margin-top:8px;display:flex}.compose-actions small{font-size:11px}.coach-page .chat-compose .compose-actions .button{height:42px;margin:0}.coach-page .voice-status{top:-24px;bottom:auto}@media (width<=760px){.main-shell.coach-mode{left:0}html.keyboard-open .main-shell.coach-mode{padding-bottom:0}html.keyboard-open .sidebar{display:none}.main-shell.coach-mode>main{padding:10px 14px 0}.coach-footer{background:var(--surface);margin:0 -14px;padding:8px 14px}.coach-page .chat-message{max-width:92%;padding:12px 14px}.coach-page .chat-compose textarea{font-size:16px}}.overview-top.with-chart{grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:18px;margin-bottom:27px;display:grid}.overview-top.with-chart .stats-grid{grid-template-columns:1fr;margin:0}.overview-top.with-chart .rhythm-panel{margin:0}.overview-top:not(.with-chart) .stats-grid{grid-template-columns:repeat(2,1fr)}.rhythm-heading{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:18px;display:flex}.rhythm-heading h2{margin:0 0 4px}.rhythm-summary{text-align:right}.rhythm-summary strong{font-family:var(--font-display);letter-spacing:-.5px;font-size:24px;display:block}.rhythm-summary small{white-space:nowrap;font-size:11px}.rhythm-plot{border-bottom:1px solid var(--border);height:170px;margin-top:22px;position:relative}.rhythm-goal{border-top:1px solid var(--muted);opacity:.7;pointer-events:none;z-index:1;position:absolute;left:0;right:0}.rhythm-key{color:var(--muted);align-items:center;gap:6px;margin-top:6px;font-size:11px;display:flex}.rhythm-key span{border-top:1px solid var(--muted);width:16px}.rhythm-cols{gap:2px;display:flex;position:absolute;inset:0}.rhythm-col{cursor:default;background:0 0;border:0;border-radius:6px;flex:1;justify-content:center;align-items:flex-end;min-width:0;padding:0;display:flex;position:relative}.rhythm-col:hover,.rhythm-col:focus-visible{background:var(--soft)}.rhythm-bar{background:var(--chart-past);border-radius:4px 4px 0 0;width:min(24px,70%);transition:filter .15s;position:relative}.rhythm-col:hover .rhythm-bar,.rhythm-col:focus-visible .rhythm-bar{filter:brightness(1.12)}.rhythm-value{color:var(--text);font-size:12px;font-weight:800;position:absolute;bottom:100%;left:50%;transform:translate(-50%,-4px)}.rhythm-tip{bottom:calc(var(--bar,0%) + 26px);white-space:nowrap;background:var(--text);color:var(--surface);opacity:0;pointer-events:none;z-index:3;border-radius:7px;padding:6px 9px;font-size:11px;transition:opacity .12s;position:absolute;left:50%;transform:translate(-50%)}.rhythm-col.tip-start .rhythm-tip{left:0;transform:none}.rhythm-col.tip-end .rhythm-tip{left:auto;right:0;transform:none}.rhythm-col:hover .rhythm-tip,.rhythm-col:focus-visible .rhythm-tip{opacity:1}.rhythm-axis{gap:2px;margin-top:7px;display:flex}.rhythm-axis span{text-align:center;min-width:0;color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-variant-numeric:tabular-nums;flex:1;font-size:10px;overflow:hidden}.rhythm-axis span:last-child{color:var(--text);font-weight:700}.rhythm-data{margin-top:14px;font-size:12px}.rhythm-data summary{cursor:pointer;color:var(--muted)}.rhythm-data table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;margin-top:8px}.rhythm-data th,.rhythm-data td{text-align:left;border-bottom:1px solid var(--border);padding:5px 4px}@media (width<=1100px){.overview-top.with-chart{grid-template-columns:1fr}.overview-top.with-chart .stats-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=760px){.rhythm-plot{height:140px}.rhythm-axis span:nth-child(2n):not(:last-child){visibility:hidden}}@media (hover:none) and (pointer:coarse){.coach-page .compose-actions{display:none}}.modal{overflow-wrap:anywhere;overflow-x:hidden}.modal header h2{min-width:0}.activity-list{grid-template-columns:minmax(0,1fr)}.metric-summary{grid-template-columns:minmax(90px,1fr) minmax(0,2fr)}.modal-actions{gap:10px}:root{--overview-gap:20px}.stats-grid,.overview-top.with-chart,.dashboard-grid{gap:var(--overview-gap);margin-bottom:var(--overview-gap)}.overview-top.with-chart .stats-grid,.dashboard-grid>.panel{margin-bottom:0}@media (width<=760px){:root{--overview-gap:12px}}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}:root{--timer-rest:#b4632a}@media (prefers-color-scheme:dark){:root{--timer-rest:#e0a26a}}.timer-launch{min-height:38px;margin:4px 0 6px;padding:8px 14px}.interval-timer{text-align:center;justify-items:center;gap:6px;display:grid}.timer-plan{margin:8px 0 0}.timer-ring{aspect-ratio:1;width:min(260px,70vw);position:relative}.timer-ring svg{width:100%;height:100%;transform:rotate(-90deg)}.timer-track,.timer-progress{fill:none;stroke-width:12px}.timer-track{stroke:var(--soft)}.timer-progress{stroke:var(--green);stroke-linecap:round;transition:stroke-dashoffset .1s linear}.interval-timer.rest .timer-progress,.interval-timer.setRest .timer-progress{stroke:var(--timer-rest)}.interval-timer.ready .timer-progress{stroke:var(--muted)}.timer-readout{place-content:center;gap:4px;display:grid;position:absolute;inset:0}.timer-phase{letter-spacing:.08em;text-transform:uppercase;color:var(--green);font-size:13px;font-weight:800}.interval-timer.rest .timer-phase,.interval-timer.setRest .timer-phase{color:var(--timer-rest)}.interval-timer.ready .timer-phase{color:var(--muted)}.timer-seconds{font-family:var(--font-display);letter-spacing:-2px;font-variant-numeric:tabular-nums;font-size:clamp(56px,18vw,84px);line-height:1}.timer-count{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12px}.timer-next{color:var(--muted);margin:4px 0 8px;font-size:13px}.timer-controls{justify-content:center;gap:10px}details.panel>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;min-height:44px;list-style:none;display:flex}details.panel>summary::-webkit-details-marker{display:none}details.panel>summary h2{align-items:center;gap:8px;margin:0;display:flex}details.panel>summary .summary-chevron{color:var(--muted);flex-shrink:0;transition:transform .2s}details.panel[open]>summary{margin-bottom:12px}details.panel[open]>summary .summary-chevron{transform:rotate(180deg)}details.panel>summary .summary-count{border:2px solid var(--line);border-radius:999px;padding:1px 9px;font-size:.8rem;font-weight:800}.history-pages{justify-content:space-between;align-items:center;gap:10px;margin-top:12px;display:flex}.timer-setup{text-align:left;grid-template-columns:repeat(auto-fit,minmax(88px,1fr));align-items:end;gap:0 12px;width:100%;display:grid}.timer-setup .field{margin:0}.climb-loader{text-align:center;color:var(--text);justify-items:center;gap:4px;padding:18vh 20px 40px;display:grid}.climb-loader svg{width:72px;height:81px;margin-bottom:10px;overflow:visible}.climb-loader strong{font-family:var(--font-display);font-size:15px;font-weight:700}.climb-loader span{color:var(--muted);font-size:12px}.climb-loader.climb-loader-inline{padding:8vh 20px 40px}.main-shell.loading{flex-direction:column;min-height:100dvh;display:flex}.main-shell.loading>main{flex:1;align-content:center;display:grid}.main-shell.loading>.site-footer{width:100%}.main-shell.loading .climb-loader{padding:0 20px}#root>.climb-loader{align-content:center;min-height:100dvh;padding:0 20px}.climb-loader .climb-loader-slow{opacity:0;max-width:260px;margin-top:8px;animation:.4s ease-out 5s forwards mk-slow}@keyframes mk-slow{to{opacity:1}}.climb-loader svg{color:var(--text)}.climb-loader svg *{transform-box:view-box}.mk-ink{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round}.mk-fill{fill:var(--bg)}.mk-solid{fill:currentColor}.mk-thin{stroke-width:1.1px;opacity:.7}.mk-echo{opacity:.3}.mk-echo .mk-ink{stroke-width:1px}.mk-handle{stroke-width:3.4px}.mk-face{stroke-width:1.5px}.mk-ground{transform-origin:32px 66px;animation:1.2s ease-in-out infinite mk-shadow}.mk-steam{stroke-width:1.3px;opacity:0;transform-origin:12px 14px;animation:1.8s ease-out infinite mk-steam}.mk-steam-2{animation-delay:.6s}.mk-steam-3{animation-delay:1.2s}.mk-pot{transform-origin:32px 62px;animation:1.2s ease-in-out infinite mk-dance}.mk-lid{animation:.6s ease-in-out infinite mk-lid}.mk-foot-left{animation:1.2s ease-in-out infinite mk-step}.mk-foot-right{animation:1.2s ease-in-out .6s infinite mk-step}@keyframes mk-dance{0%,to{transform:rotate(-9deg)}25%{transform:translateY(-5px)rotate(0)scaleY(1.04)}50%{transform:rotate(9deg)}75%{transform:translateY(-5px)rotate(0)scaleY(1.04)}}@keyframes mk-lid{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}@keyframes mk-step{0%,50%,to{transform:translateY(0)}25%{transform:translateY(-3px)}}@keyframes mk-shadow{0%,50%,to{transform:scaleX(1)}25%,75%{transform:scaleX(.75)}}@keyframes mk-steam{0%{opacity:0;transform:translate(0)scale(.6)}25%{opacity:.6}to{opacity:0;transform:translate(-3px,-14px)scale(1.4)}}@media (prefers-reduced-motion:reduce){.mk-pot,.mk-lid,.mk-foot,.mk-ground,.mk-steam{animation:none}}.interval-timer.with-setup .timer-ring{width:min(170px,45vw)}.interval-timer.with-setup .timer-seconds{font-size:40px}.timer-seconds.long{font-size:clamp(44px,13vw,64px)}.interval-timer.with-setup .timer-seconds.long{font-size:34px}.rhythm-bar{transform-origin:bottom;animation:.7s cubic-bezier(.22,1,.36,1) both rhythm-grow;animation-delay:calc(var(--i,0) * 60ms)}.rhythm-value{animation:.3s ease-out both rhythm-fade;animation-delay:calc(var(--i,0) * 60ms + .6s)}@keyframes rhythm-grow{0%{transform:scaleY(0)}to{transform:scaleY(1)}}@keyframes rhythm-fade{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.rhythm-bar,.rhythm-value{animation:none}}.deleting-overlay{z-index:2100;padding:var(--safe-top) 20px var(--safe-bottom);background:color-mix(in srgb, var(--bg) 88%, transparent);-webkit-backdrop-filter:blur(6px);color:var(--text);text-align:center;place-content:center;justify-items:center;gap:14px;display:grid;position:fixed;inset:0}.deleting-overlay strong{font-family:var(--font-display);font-size:15px;font-weight:700}.deleting-spinner{border:3px solid var(--border);border-top-color:var(--primary,var(--text));border-radius:50%;width:32px;height:32px;animation:.8s linear infinite deleting-spin}@keyframes deleting-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.deleting-spinner{animation-duration:2.4s}}.goals-panel .goal-row svg{color:var(--green);flex-shrink:0}.goals-panel .goal-row.main-goal strong{font-size:15px}html.modal-open,html.modal-open body{overscroll-behavior:none;overflow:hidden}.modal{overscroll-behavior:contain}.google-button svg{flex-shrink:0}.crash-screen{text-align:center;max-width:420px;margin:20vh auto;padding:24px}.auth-modal{gap:14px;display:grid}.auth-lead{color:var(--muted);margin:-8px 0 4px;font-size:14px}.auth-modal .google-button,.auth-modal .apple-button,.auth-modal .auth-submit{width:100%}.apple-button{color:#fff;background:#000;border:0;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:12px 20px;font:600 16px -apple-system,system-ui,sans-serif;display:inline-flex}.apple-button svg{flex-shrink:0}@media (prefers-color-scheme:dark){.apple-button{color:#000;background:#fff}}.auth-modal form{display:grid}.auth-divider{color:var(--muted);align-items:center;gap:12px;font-size:12px;display:flex}.auth-divider:before,.auth-divider:after{content:"";border-top:1px solid var(--border);flex:1}.auth-forgot{justify-self:end;margin:-8px 0 14px;font-size:12px}.auth-swap{text-align:center;color:var(--muted);margin:4px 0 0;font-size:13px}.auth-swap .text-button{font-size:13px;font-weight:700}.app-shell.no-nav .sidebar{display:none}.app-shell.no-nav .main-shell{margin-left:0;padding-bottom:0}.landing{max-width:1080px;padding:calc(16px + var(--safe-top)) 24px calc(24px + var(--safe-bottom));color:var(--text);margin:0 auto}.landing-bar{justify-content:space-between;align-items:center;min-height:48px;display:flex}.landing-brand{font-family:var(--font-display);align-items:center;gap:8px;font-size:18px;font-weight:800;display:flex}.landing-brand svg{color:var(--green)}.landing-footer{color:var(--muted);justify-content:space-between;padding:16px 0;font-size:12px;display:flex}.landing-footer a{color:var(--muted)}.connect-page .landing-brand{color:inherit;text-decoration:none}.connect-card{max-width:520px;margin:32px auto 0}.connect-card h1{margin:0 0 12px;font-size:26px;line-height:1.2}.connect-list,.connect-steps,.connection-list{gap:10px;margin:0 0 16px;padding:0;list-style:none;display:grid}.connect-list li{align-items:flex-start;gap:10px;display:flex}.connect-list svg{color:var(--green);flex:none;margin-top:2px}.connected-apps .row{margin-bottom:14px}.connection-list li{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:10px 0;display:flex}.connection-list li span{overflow-wrap:anywhere;gap:2px;min-width:0;display:grid}.tag.deload{background:var(--deload-soft);color:var(--deload)}.deload-panel{background:var(--deload-soft);border-color:color-mix(in srgb, var(--deload) 30%, transparent);align-items:flex-start;gap:14px;margin-bottom:18px;display:flex}.deload-panel>svg{color:var(--deload);flex:none;margin-top:4px}.deload-panel h2{margin:8px 0 6px}.deload-panel p{margin:0}.deload-line{background:var(--deload-soft);color:var(--text);border-radius:12px;margin:0 0 16px;padding:10px 14px;font-size:14px}.cycle-week{color:var(--muted);font-size:13px;font-weight:500;display:block}.calendar-toolbar h2 .tag{vertical-align:middle;margin-left:8px}.calendar-grid.deload .calendar-day{background:var(--deload-soft)}.deload-drop{color:var(--deload);font-weight:600;margin-top:8px!important}.deload-panel .muted.small{margin-top:8px}.native-welcome{max-width:440px;min-height:100svh;padding:calc(24px + var(--safe-top)) 24px calc(24px + var(--safe-bottom));flex-direction:column;justify-content:center;gap:16px;margin:0 auto;display:flex}.native-welcome .brand-mark{width:72px;height:72px;display:block}.native-welcome h1{margin:0}.native-welcome p{color:var(--muted);margin:0}.native-welcome-actions{gap:12px;margin-top:12px;display:grid}.native-welcome-actions .button{width:100%}.ai-consent dl{gap:4px;margin:0;display:grid}.ai-consent dt{font-weight:700}.ai-consent dd{margin:0 0 8px}:root{--font-display:"Unbounded Variable", ui-sans-serif, system-ui, sans-serif;--font-body:"Plus Jakarta Sans Variable", ui-sans-serif, system-ui, sans-serif;--bg:#fbf6ee;--surface:#fff;--surface-2:#fff9f1;--text:#1d1a2f;--muted:#5a556d;--border:#e7ddcd;--line:#1d1a2f;--edge:#1d1a2f;--ink:#1d1a2f;--green:#5536db;--soft:#f0ebff;--hero:#fff0d2;--primary:#5536db;--on-primary:#fff;--focus:#5536db;--chart-past:#cdc2ff;--chart-now:#ff6b5b;--radius:24px;--shadow:4px 4px 0 var(--edge);--shadow-sm:2px 2px 0 var(--edge);--dots:color-mix(in srgb, var(--text) 12%, transparent);--overview-gap:22px;--coral:#ff6b5b;--sun:#ffc53d;--teal:#2cc0ad;--violet:#a596ff;--lime:#a6de4a;--sky:#5cb8ff;--pink:#ff8ccf;--peach:#ffab70;--mint:#8fe3c4;--f-finger_strength:var(--coral);--f-aerobic_endurance:var(--sky);--f-power_endurance:var(--pink);--f-power:var(--sun);--f-technique:var(--lime);--f-pulling_strength:var(--violet);--f-conditioning:var(--teal);--f-flexibility:var(--peach);--f-none:#e7ddcd;background:var(--bg);color:var(--text)}@media (prefers-color-scheme:dark){:root{--bg:#15131d;--surface:#201d2c;--surface-2:#272336;--text:#f6f3ff;--muted:#b6b0cc;--border:#3a3550;--line:#4d4768;--edge:#000;--green:#b9abff;--soft:#2c2743;--hero:#2a2338;--primary:#a594ff;--on-primary:#15131d;--focus:#c3b8ff;--chart-past:#4e4575;--chart-now:#ff7b6b;--f-none:#4d4768;background:var(--bg);color:var(--text)}}@media (width<=760px){:root{--overview-gap:14px}}.hold-coral{--hc:var(--coral)}.hold-sun{--hc:var(--sun)}.hold-teal{--hc:var(--teal)}.hold-violet{--hc:var(--violet)}.hold-lime{--hc:var(--lime)}.hold-sky{--hc:var(--sky)}.hold-pink{--hc:var(--pink)}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.02em}h1{font-size:clamp(26px,2.6vw,38px);font-weight:750;line-height:1.1}h2{font-weight:700}h3{font-weight:650}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline-color:var(--focus)}.muted{color:var(--muted)}.button{border:2px solid var(--line);background:var(--primary);min-height:46px;color:var(--on-primary);box-shadow:var(--shadow-sm);border-radius:14px;padding:11px 20px;font-size:14px;font-weight:800;transition:transform .12s,box-shadow .12s}.button:hover{filter:none;box-shadow:3px 3px 0 var(--edge);transform:translate(-1px,-1px)}.button:active{box-shadow:0 0 0 var(--edge);transform:translate(2px,2px)}.button.secondary{background:var(--surface);border-color:var(--line);color:var(--text)}.text-button{color:var(--green);font-size:13px;font-weight:800}.text-button.danger{color:#b3261e}.text-button.back-link{place-self:start;gap:2px;margin:-14px 0 12px -6px}.so>.back-link,.fp-page>.back-link{margin-bottom:0}.settings-page-wrap>.back-link,.admin-account>.back-link{margin-bottom:-4px}@media (prefers-color-scheme:dark){.text-button.danger{color:#ffa597}}.icon-button{border-radius:12px}input,select,textarea{border:2px solid var(--border);background:var(--surface);border-radius:12px}input:focus,select:focus,textarea:focus{border-color:var(--primary)}.sidebar{background:var(--surface);border-right:2px solid var(--line)}.sidebar .brand{font-family:var(--font-display);white-space:nowrap;font-size:16px;font-weight:800}.brand-mark{background:0 0;border-radius:0;width:46px;height:46px}svg.brand-mountain{color:var(--text);flex:none;overflow:visible}.nav-item{color:var(--muted);border:2px solid #0000;border-radius:14px;font-weight:700}.nav-item:hover{background:var(--soft);color:var(--text)}.nav-item.active{background:var(--sun);color:var(--ink);border-color:var(--line);box-shadow:var(--shadow-sm)}.nav-dot{background:var(--coral);border:1.5px solid var(--line);width:9px;height:9px}.install-link{border:2px dashed var(--border);width:100%;min-height:44px;color:var(--text);background:0 0;border-radius:14px;align-items:center;gap:10px;padding:10px 14px;font-size:13px;font-weight:700;text-decoration:none;display:flex}.install-link:hover{border-color:var(--line)}.profile-button{border-top:2px solid var(--border);margin-top:16px;padding-top:16px}.avatar{background:var(--sky);color:var(--ink);border:2px solid var(--line)}.topbar{background:color-mix(in srgb, var(--bg) 88%, transparent);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--border);height:76px;color:var(--text);z-index:5;position:sticky;top:0}.topbar button,.topbar button:hover{color:var(--text);background:0 0}.install-dismiss{border:2px solid var(--line);background:var(--surface);color:var(--text)}.offline-pill{border:2px solid var(--line);background:var(--sun);color:var(--ink);border-radius:999px;align-items:center;gap:6px;padding:5px 12px;font-size:12px;font-weight:800;display:inline-flex}.page-title{margin-bottom:28px}.page-title-main{align-items:center;gap:16px;min-width:0;display:flex}.page-icon{border:2px solid var(--line);background:var(--violet);width:58px;height:58px;color:var(--ink);box-shadow:var(--shadow);border-radius:46% 54% 42% 58%/55% 45%;flex:none;place-items:center;display:grid;transform:rotate(-4deg)}.page-icon:has(.lucide-house){background:var(--coral)}.page-icon:has(.lucide-calendar-days){background:var(--sky)}.page-icon:has(.lucide-library){background:var(--lime)}.page-icon:has(.lucide-chart-no-axes-combined){background:var(--sun)}.page-icon:has(.lucide-settings){background:var(--pink)}.page-title h1{margin:0 0 4px}.page-title p{font-size:14px}.panel,.stat-card{border:2px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.panel h2,.section-heading h2{gap:10px;font-size:17px}.panel h2>svg,.section-heading h2>svg{border:2px solid var(--line);background:var(--sun);width:34px;height:34px;color:var(--ink);border-radius:11px;flex:none;padding:7px}.panel[class*=tone-]>summary h2>svg{background:var(--tone)}.tone-coral{--tone:var(--coral)}.tone-teal{--tone:var(--teal)}.tone-violet{--tone:var(--violet)}.tone-pink{--tone:var(--pink)}.tone-sky{--tone:var(--sky)}.tone-lime{--tone:var(--lime)}.tone-peach{--tone:var(--peach)}.tone-mint{--tone:var(--mint)}.tone-sun{--tone:var(--sun)}.tag{border:1.5px solid var(--line);background:var(--surface);color:var(--text);letter-spacing:.04em;border-radius:999px;padding:3px 9px;font-size:10px;font-weight:800}.tag.deload{border-color:var(--deload)}.banner,.notice,.error{border:2px solid var(--line);border-radius:16px}.empty-icon{border:2px solid var(--line);background:var(--lime);width:70px;height:70px;color:var(--ink);border-radius:46% 54% 42% 58%/55% 45%}.modal{border:2px solid var(--line);box-shadow:8px 8px 0 var(--edge);border-radius:28px}.modal::backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#15131dad}.activity-card,.number-card,.structure-list li{border:2px solid var(--line);border-radius:18px}.activity-card{background:var(--surface-2);box-shadow:var(--shadow-sm)}.activity-title{align-items:center;gap:10px;display:flex}.availability-row{border:2px solid var(--line);background:var(--surface-2);box-shadow:var(--shadow-sm);border-radius:20px}.availability-head strong{font-family:var(--font-display);font-size:14px}.equipment-chips label{border:2px solid var(--border);border-radius:12px;font-size:12px;font-weight:700}.equipment-chips .selected{border-color:var(--line);background:var(--sun);color:var(--ink)}.deload-line{border:2px solid color-mix(in srgb, var(--deload) 50%, transparent)}.facet-badge{--facet:var(--f-none);border:2px solid var(--line);background:var(--facet);width:40px;height:40px;color:var(--ink);border-radius:46% 54% 42% 58%/55% 45%;flex:none;place-items:center;display:inline-grid;position:relative}.facet-badge.facet-none{color:var(--text)}.facet-finger_strength{--facet:var(--f-finger_strength)}.facet-aerobic_endurance{--facet:var(--f-aerobic_endurance)}.facet-power_endurance{--facet:var(--f-power_endurance)}.facet-power{--facet:var(--f-power)}.facet-technique{--facet:var(--f-technique)}.facet-pulling_strength{--facet:var(--f-pulling_strength)}.facet-conditioning{--facet:var(--f-conditioning)}.facet-flexibility{--facet:var(--f-flexibility)}.home-top{gap:var(--overview-gap);margin-bottom:var(--overview-gap);grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);display:grid}.next-up{border:2px solid var(--line);background:var(--facet,var(--violet));min-height:250px;color:var(--ink);box-shadow:7px 7px 0 var(--edge);border-radius:30px;position:relative;overflow:hidden}.next-up.facet-none{background:var(--violet)}.next-up.empty-next{background:var(--sun)}.next-up-art{pointer-events:none;opacity:.22;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cpath d='M18 58 C10 36 26 14 50 14 C76 14 92 34 86 58 C82 76 64 88 46 86 C30 84 22 74 18 58 Z' fill='none' stroke='%231d1a2f' stroke-width='5'/%3E%3Ccircle cx='52' cy='30' r='6' fill='%231d1a2f'/%3E%3C/svg%3E") 50%/contain no-repeat;width:260px;height:260px;position:absolute;bottom:-40px;right:-30px;transform:rotate(-18deg)}.next-up-label{border:2px solid var(--ink);font-family:var(--font-body);letter-spacing:.12em;text-transform:uppercase;color:var(--ink);background:#fff;border-radius:10px;margin:24px 26px 0;padding:5px 12px;font-size:12px;font-weight:800;display:inline-block;position:relative;transform:rotate(-2deg)}.next-up-card{width:100%;color:inherit;text-align:left;font:inherit;background:0 0;border:0;justify-items:start;gap:12px;padding:16px 26px 26px;display:grid;position:relative}button.next-up-card:focus-visible{outline-color:var(--ink);outline-offset:-8px;border-radius:30px}.next-up-card .facet-badge{border-color:var(--ink);width:56px;height:56px;color:var(--ink);background:#fff}.next-up-title{font-family:var(--font-display);letter-spacing:-.02em;font-size:clamp(22px,2.6vw,32px);font-weight:800;line-height:1.1}.next-up-meta{flex-wrap:wrap;gap:8px;display:flex}.next-up-meta>span{border:2px solid var(--ink);background:#ffffffc9;border-radius:999px;align-items:center;gap:6px;padding:5px 11px;font-size:13px;font-weight:700;display:inline-flex}.next-up-go{border:2px solid var(--ink);background:var(--ink);color:#fff;border-radius:14px;align-items:center;gap:8px;margin-top:4px;padding:11px 18px;font-size:14px;font-weight:800;transition:transform .12s;display:inline-flex;box-shadow:3px 3px #fff9}button.next-up-card:hover .next-up-go{transform:translate(-1px,-1px)}button.next-up-card:active .next-up-go{transform:translate(2px,2px)}.today-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:4px;display:flex}.today-start{border:2px solid var(--ink);background:var(--lime);min-height:56px;color:var(--ink);font:inherit;box-shadow:4px 4px 0 var(--ink);cursor:pointer;border-radius:16px;align-items:center;gap:10px;padding:14px 26px;font-size:18px;font-weight:800;display:inline-flex}.today-start:active{box-shadow:2px 2px 0 var(--ink);transform:translate(2px,2px)}.next-up.today{cursor:pointer}.next-up.today .next-up-card{position:static}.today-open{color:inherit;text-align:left;font:inherit;cursor:pointer;background:0 0;border:0;padding:0}.today-open:after{content:"";border-radius:30px;position:absolute;inset:0}.today-open:focus-visible{outline:none}.today-open:focus-visible:after{outline:3px solid var(--ink);outline-offset:-8px}.today-actions,.next-up .cant-link{z-index:1;position:relative}.today-start:focus-visible{outline-offset:3px}@media (width<=760px){.today-start{flex:100%;justify-content:center}}.next-up-meta>.done-chip{background:var(--lime)}.reminder-prompt h2{margin-top:0}.reminder-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}@media (width<=760px){.reminder-actions>.button{flex:100%;justify-content:center}.reminder-actions>.text-button{margin:0 auto}}.empty-next .next-up-card p{margin:0;font-weight:600}.empty-next .button{background:var(--ink);color:#fff;border-color:var(--ink)}.this-week{text-align:center;align-content:center;justify-items:center;gap:8px;margin:0;display:grid}.this-week h2{justify-self:start;margin:0}.week-ring{aspect-ratio:1;width:150px;position:relative}.week-ring svg{width:100%;height:100%;transform:rotate(-90deg)}.ring-track,.ring-fill{fill:none;stroke-width:11px}.ring-track{stroke:var(--soft)}.ring-fill{stroke:var(--primary);stroke-linecap:round;transition:stroke-dashoffset 1s cubic-bezier(.34,1.56,.64,1)}.week-ring-value{text-align:center;place-content:center;justify-items:center;gap:2px;display:grid;position:absolute;inset:0}.week-ring-value strong{font-family:var(--font-display);white-space:nowrap;font-size:22px;line-height:1}.week-ring-value small{color:var(--muted);font-size:12px}.week-note{margin:0;font-size:14px;font-weight:800}.week-minutes{color:var(--muted);align-items:center;gap:8px;margin:0;font-size:13px;display:flex}.week-minutes strong{color:var(--text)}.dashboard-grid.single{grid-template-columns:1fr}.rhythm-bar{border:2px solid var(--line);border-bottom:0;border-radius:10px 10px 0 0;width:min(30px,70%)}.rhythm-col.current .rhythm-bar{background:var(--chart-now)}.rhythm-plot{border-bottom:2px solid var(--line)}.rhythm-summary strong{font-size:26px}.rhythm-col.gold .rhythm-bar,.rhythm-col.current.gold .rhythm-bar{background:var(--sun)}.rhythm-gold-key i{border:2px solid var(--line);background:var(--sun);border-radius:4px;width:11px;height:11px}.rhythm-summary .rhythm-at-goal{border:2px solid var(--ink);background:var(--sun);color:var(--ink);border-radius:999px;margin-top:4px;padding:1px 8px;font-weight:800;display:inline-block}.session-card{border-bottom:2px dashed var(--border);border-radius:16px;gap:14px;width:calc(100% + 20px);margin:0 -10px;padding:12px 10px;transition:background .15s}.session-card:hover{background:var(--surface-2)}.session-card strong{font-size:15px}.session-card small{font-size:12px}.session-card>span.facet-badge{flex:none}.session-date{border:2px solid var(--line);background:var(--surface);width:50px;box-shadow:var(--shadow-sm);border-radius:14px}.session-date strong{font-family:var(--font-display);font-size:17px}.session-card-go{color:var(--muted)}.facet-line{text-transform:capitalize;font-size:11px}.calendar-toolbar .button.secondary{width:46px;padding:0}.calendar-grid{border:2px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.calendar-day{border-right:2px solid var(--border)}.calendar-day.today{background:var(--surface-2)}.calendar-day.today header strong{border:2px solid var(--line);background:var(--sun);width:42px;height:42px;color:var(--ink);border-radius:46% 54% 42% 58%/55% 45%;place-items:center;display:inline-grid}.calendar-session{--cf:var(--violet);border:2px solid var(--line);background:color-mix(in srgb, var(--cf) 26%, var(--surface));box-shadow:var(--shadow-sm);border-radius:14px;padding:10px;transition:transform .12s;position:relative}.calendar-session:has(.facet-finger_strength){--cf:var(--f-finger_strength)}.calendar-session:has(.facet-aerobic_endurance){--cf:var(--f-aerobic_endurance)}.calendar-session:has(.facet-power_endurance){--cf:var(--f-power_endurance)}.calendar-session:has(.facet-power){--cf:var(--f-power)}.calendar-session:has(.facet-technique){--cf:var(--f-technique)}.calendar-session:has(.facet-pulling_strength){--cf:var(--f-pulling_strength)}.calendar-session:has(.facet-conditioning){--cf:var(--f-conditioning)}.calendar-session:has(.facet-flexibility){--cf:var(--f-flexibility)}.calendar-session:hover{transform:translate(-1px,-1px)}.calendar-session .facet-badge{place-items:center;width:32px;height:32px;margin-bottom:8px;display:grid}.available-window{border-width:2px;border-radius:12px}.tabs{scrollbar-width:none;border:0;flex-wrap:nowrap;gap:8px}.tabs button{border:2px solid var(--line);background:var(--surface);min-height:44px;color:var(--text);white-space:nowrap;border-radius:14px;align-items:center;gap:7px;padding:8px 16px;font-weight:700;display:inline-flex}.tabs button.active{background:var(--sun);color:var(--ink);border-bottom:2px solid var(--line);box-shadow:var(--shadow-sm)}.training-card{border:2px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);transition:transform .15s,box-shadow .15s}.training-card:hover{box-shadow:6px 6px 0 var(--edge);transform:translate(-2px,-2px)}.card-art{--cf:var(--f-none);border-bottom:2px solid var(--line);background:radial-gradient(circle, #1d1a2f26 2.5px, transparent 3px) 0 0 / 22px 22px, var(--cf);justify-content:flex-start;height:112px}.card-art:has(.facet-finger_strength){--cf:var(--f-finger_strength)}.card-art:has(.facet-aerobic_endurance){--cf:var(--f-aerobic_endurance)}.card-art:has(.facet-power_endurance){--cf:var(--f-power_endurance)}.card-art:has(.facet-power){--cf:var(--f-power)}.card-art:has(.facet-technique){--cf:var(--f-technique)}.card-art:has(.facet-pulling_strength){--cf:var(--f-pulling_strength)}.card-art:has(.facet-conditioning){--cf:var(--f-conditioning)}.card-art:has(.facet-flexibility){--cf:var(--f-flexibility)}.card-art .facet-badge{border-color:var(--ink);width:62px;height:62px;color:var(--ink);box-shadow:3px 3px 0 var(--ink);background:#fff;transform:rotate(-6deg)}.training-card h2{margin:12px 0 8px;font-size:17px}.calendar-hint{color:var(--muted);margin:-4px 0 14px;font-size:13px}.calendar-hint .hint-touch{display:none}@media (hover:none) and (pointer:coarse){.calendar-hint .hint-mouse{display:none}.calendar-hint .hint-touch{display:inline}}.calendar-session.movable{cursor:grab;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.calendar-session.lifted{opacity:.35;box-shadow:none;border-style:dashed;transform:none}.calendar-session.drag-ghost{z-index:1000;pointer-events:none;cursor:grabbing;box-shadow:6px 8px 0 var(--line);margin:0;transition:none;position:fixed;top:0;left:0}.calendar-grid.dragging,.calendar-grid.dragging *{cursor:grabbing}.calendar-grid.dragging .calendar-session:hover{transform:none}.calendar-day{transition:background-color .12s,box-shadow .12s}.calendar-day.drop-target{background:color-mix(in srgb, var(--violet) 16%, var(--surface));box-shadow:inset 0 0 0 3px var(--violet)}.calendar-day.drop-off{opacity:.45}.coach-avatar,.coach-welcome-icon{border:2px solid var(--line);background:var(--violet);color:var(--ink)}.coach-welcome-icon{width:72px;height:72px;box-shadow:var(--shadow);border-radius:46% 54% 42% 58%/55% 45%;place-items:center;margin-bottom:16px;display:inline-grid;transform:rotate(-6deg)}.coach-welcome h2{font-size:24px}.coach-suggestions button{border:2px solid var(--line);min-height:44px;box-shadow:var(--shadow-sm);border-radius:14px;align-items:center;gap:8px;padding:10px 16px;font-weight:700;transition:transform .12s;display:inline-flex}.coach-suggestions button:hover{border-color:var(--line);transform:translate(-1px,-1px)}.coach-suggestions button svg{color:var(--green)}.coach-page .chat-message{border:2px solid var(--line);background:var(--surface);box-shadow:var(--shadow-sm);border-radius:20px}.coach-page .chat-message.user{background:var(--primary);color:var(--on-primary)}.coach-page .chat-markdown{font-size:16px;line-height:1.5}.coach-page .chat-message small{font-size:10px}.coach-page .chat-message.user small,.coach-page .chat-message.user a{color:inherit}.coach-page .chat-compose textarea,.coach-page .chat-compose .voice-button{border:2px solid var(--line);border-radius:16px}.goal-row,.measurement-row{border-bottom:2px dashed var(--border)}.goals-panel .goal-row>svg{border:2px solid var(--line);background:var(--lime);width:38px;height:38px;color:var(--ink);border-radius:46% 54% 42% 58%/55% 45%;padding:8px}.goals-panel .goal-row.main-goal>svg{background:var(--coral)}.trend-chart{color:var(--chart-now)}.best-row .best-value strong{font-family:var(--font-display);font-size:16px}.plan-building{background:radial-gradient(circle, var(--dots) 2px, transparent 2.5px) 0 0 / 28px 28px, var(--surface-2);border-radius:20px;align-content:center;gap:12px;min-height:380px;padding:20px 18px;position:relative;overflow:hidden}.plan-building svg{width:auto}.pb-route{gap:18px;margin:0 0 6px;padding:0;list-style:none;display:flex;position:relative}.pb-route:before{content:"";border-top:2px dashed var(--border);position:absolute;top:50%;left:8px;right:8px}.pb-route li{border:2px solid var(--line);background:var(--surface);border-radius:46% 54% 42% 58%/55% 45%;width:18px;height:18px;transition:background .4s,transform .4s;position:relative}.pb-route li.done{background:var(--lime)}.pb-route li.now{background:var(--sun);animation:1.2s ease-in-out infinite pb-pulse;transform:scale(1.3)}.pb-stage{place-items:center;width:min(100%,380px);min-height:200px;animation:.55s cubic-bezier(.34,1.56,.64,1) both pb-in;display:grid}.plan-building-text{font-family:var(--font-display);margin:4px 0 0;font-size:17px;font-weight:800}.pb-chips{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.pb-chips span{border:2px solid var(--ink);background:var(--hc,var(--surface));color:var(--ink);animation:.45s cubic-bezier(.34,1.56,.64,1) both pb-pop;animation-delay:calc(var(--k,0) * .25s + .5s);border-radius:999px;padding:6px 12px;font-size:13px;font-weight:700}.pb-goal .pb-chips span:nth-child(2){--k:1}.pb-goal .pb-chips span:nth-child(3){--k:2}.pb-goal{border:2px solid var(--line);background:var(--surface);width:100%;box-shadow:var(--shadow-sm);text-align:left;border-radius:18px;gap:12px;padding:16px;display:grid}.pb-label{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:11px;font-weight:800}.pb-goal p{min-height:3em;margin:0;font-size:16px;font-weight:700}.pb-goal .pb-chips{justify-content:flex-start}.pb-caret{vertical-align:-.15em;background:var(--primary);width:2px;height:1em;margin-left:2px;animation:.8s step-end infinite pb-blink;display:inline-block}.pb-week{justify-items:center;gap:18px;display:grid}.pb-clock{color:var(--primary);animation:2.4s linear infinite pb-spin}.pb-days{gap:6px;display:flex}.pb-days span{border:2px solid var(--border);background:var(--surface);width:40px;color:var(--muted);border-radius:12px;justify-items:center;gap:6px;padding:8px 0;font-size:13px;font-weight:800;display:grid}.pb-days i{width:16px;height:16px}.pb-days .free{border-color:var(--line);color:var(--text)}.pb-days .free i{border:2px solid var(--ink);background:var(--coral);animation:.4s cubic-bezier(.34,1.56,.64,1) both pb-pop;animation-delay:calc(var(--k) * .35s + .3s);border-radius:46% 54% 42% 58%/55% 45%}.pb-kit{justify-items:center;gap:18px;display:grid}.pb-slots{border:2px solid var(--line);background:var(--surface);box-shadow:var(--shadow-sm);border-radius:18px;gap:10px;padding:8px;display:flex}.pb-reel{background:var(--soft);border-radius:12px;width:48px;height:48px;overflow:hidden}.pb-reel>span{animation:1.6s cubic-bezier(.2,.7,.25,1) both pb-reel;animation-delay:calc(var(--k) * .45s + .2s);justify-items:center;display:grid}.pb-reel .facet-badge{width:40px;height:40px;margin:4px 0}.pb-balance{justify-items:center;padding-top:50px;display:grid;position:relative}.pb-beam{border:2px solid var(--line);background:var(--sun);border-radius:6px;width:230px;height:10px;animation:2.4s ease-in-out infinite alternate pb-tilt;position:relative}.pb-weight{border:2px solid var(--ink);background:var(--hc);width:50px;height:50px;color:var(--ink);border-radius:46% 54% 42% 58%/55% 45%;place-items:center;display:grid;position:absolute;top:-52px}.pb-weight:first-child{left:-6px}.pb-weight:last-child{right:-6px}.pb-pivot{border-left:22px solid #0000;border-right:22px solid #0000;border-bottom:36px solid var(--line);width:0;height:0}.pb-cal{grid-template-columns:repeat(7,38px);gap:7px;display:grid}.pb-cal span{aspect-ratio:1;border:2px solid var(--line);background:var(--surface);border-radius:10px;place-items:center;display:grid}.pb-cal i{aspect-ratio:1;border:2px solid var(--ink);background:var(--hc);width:60%;animation:.5s cubic-bezier(.34,1.56,.64,1) both pb-drop;animation-delay:calc(var(--k) * .22s + .3s);border-radius:46% 54% 42% 58%/55% 45%}.pb-chalk{position:relative}.plan-building .plan-wall{width:170px;height:auto}.plan-building .wall{fill:var(--surface);stroke:var(--line);stroke-width:2px}.pb-puff{left:calc(38% + var(--k) * 6%);top:calc(30% + var(--k) * 9%);background:color-mix(in srgb, var(--text) 16%, transparent);width:26px;height:26px;animation:1.8s ease-out infinite pb-puff;animation-delay:calc(var(--k) * .35s);border-radius:50%;position:absolute}@keyframes pb-in{0%{opacity:0;transform:translateY(18px)scale(.92)}}@keyframes pb-pop{0%{opacity:0;transform:scale(.3)rotate(-12deg)}}@keyframes pb-drop{0%{opacity:0;transform:translateY(-70px)rotate(-40deg)}}@keyframes pb-pulse{50%{transform:scale(1.55)}}@keyframes pb-blink{50%{opacity:0}}@keyframes pb-spin{to{transform:rotate(360deg)}}@keyframes pb-reel{to{transform:translateY(-672px)}}@keyframes pb-tilt{0%{transform:rotate(-11deg)}to{transform:rotate(11deg)}}@keyframes pb-puff{0%{opacity:.9;transform:scale(.2)}to{opacity:0;transform:scale(1.8)translateY(-14px)}}@media (width<=760px){.plan-building{padding:18px 12px}.pb-route{gap:14px}.pb-days span{width:34px}.pb-cal{grid-template-columns:repeat(7,32px);gap:5px}.pb-beam{width:190px}}.timer-progress{stroke:var(--primary)}@media (width<=1100px){.home-top{grid-template-columns:1fr}.this-week{text-align:left;grid-template-columns:auto 1fr;justify-items:start;column-gap:22px}.this-week h2{grid-column:1/-1}.week-ring{grid-row:span 2;width:132px}.week-ring-value strong{font-size:19px}.week-note{align-self:end}.week-minutes{align-self:start}}@media (width<=760px){.sidebar{background:color-mix(in srgb, var(--surface) 88%, transparent);-webkit-backdrop-filter:blur(16px);box-shadow:0 -2px 0 var(--line);border-top:0;border-right:0}.nav-item,.nav-item:hover,.nav-item.active{box-shadow:none;color:var(--muted);border:0;border-radius:0;font-size:10px;font-weight:700;background:0 0!important}.nav-item svg{box-sizing:border-box;border:2px solid #0000;border-radius:12px;width:46px;height:28px;padding:3px 12px}.nav-item.active{color:var(--text)}.nav-item.active svg{background:var(--sun);color:var(--ink);border-color:var(--line)}.topbar{height:calc(60px + var(--safe-top));padding-top:calc(var(--safe-top) + 8px)}.mobile-brand{font-family:var(--font-display);gap:8px;font-size:16px;font-weight:800}.mobile-brand .brand-mountain{width:30px;height:30px}.page-title{display:flex}.page-title-main{align-items:flex-start}.page-icon{width:48px;height:48px}.page-icon svg{width:21px;height:21px}h1{font-size:24px}.page-title>.button{flex:none;margin-top:0}.next-up{min-height:0}.next-up-label{margin:20px 20px 0}.next-up-card{padding:14px 20px 22px}.training-card{grid-template-columns:90px 1fr}.card-art{border-bottom:0;border-right:2px solid var(--line);justify-content:center;height:100%}.card-art .facet-badge{width:50px;height:50px}.tabs{gap:6px}.tabs button{flex-direction:column;flex:1 1 0;gap:3px;min-width:0;padding:7px 4px;font-size:11px}.calendar-grid{box-shadow:none;background:0 0;border:0;border-radius:0;gap:18px;padding-right:4px;overflow:visible}.calendar-day{box-shadow:var(--shadow-sm);border-radius:18px;gap:14px;padding:16px 16px 18px;border:2px solid var(--line)!important}.calendar-session{margin-bottom:12px}.calendar-day.today header strong{width:38px;height:38px}}.hl{--gutter:max(20px, calc((100vw - 1200px) / 2));background:var(--bg);color:var(--text);position:relative;overflow-x:clip}.hl-wrap{width:min(1200px,100% - 40px);margin-inline:auto}.hl-hold{width:100%;height:auto;display:block;overflow:visible}.hl-hold-body{fill:var(--hc,var(--violet));stroke:var(--ink);stroke-width:3px}.hl-hold-shade{fill:#1d1a2f33}.hl-hold-drop{fill:var(--edge)}.hold-ghost .hl-hold-drop{display:none}.hl-bolt{fill:var(--ink);stroke:#fff9;stroke-width:2px}.hold-ghost .hl-hold-body{fill:#ffffff40;stroke:#1d1a2f33}.hold-ghost .hl-hold-shade,.hold-ghost .hl-bolt{fill:#1d1a2f1f;stroke:none}.hl-bar{z-index:20;padding:calc(10px + var(--safe-top)) var(--gutter) 10px;transition:background .25s,box-shadow .25s;position:fixed;inset:0 0 auto}.hl.scrolled .hl-bar{background:color-mix(in srgb, var(--bg) 90%, transparent);-webkit-backdrop-filter:blur(12px);box-shadow:0 2px 0 var(--line)}@media (hover:none){.hl.scrolled .hl-bar{background:color-mix(in srgb, var(--bg) 97%, transparent);-webkit-backdrop-filter:none}}.hl-bar .landing-brand{font-family:var(--font-display);gap:10px;font-size:17px;font-weight:800}@property --p{syntax:"<number>";inherits:false;initial-value:0}@property --cp{syntax:"<number>";inherits:false;initial-value:1}.hl{--vh:1svh}.hl-progress{pointer-events:none;height:4px;position:absolute;inset:auto 0 -2px}.hl-progress i{background:var(--coral);transform-origin:0;transform:scaleX(var(--page,0));position:absolute;inset:0}.hl-progress b{transform:translateX(calc(var(--page,0) * 100%));position:absolute;inset:0}.hl-progress b:after{content:"";border:2px solid var(--line);background:var(--sun);width:16px;height:16px;opacity:clamp(0, calc(var(--page,0) * 40), 1);border-radius:46% 54% 42% 58%/55% 45%;position:absolute;top:50%;left:0;transform:translate(-50%,-50%)}.hl-bar .text-button{border:2px solid var(--line);background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm);border-radius:12px;padding:0 18px}.hl-hero{min-height:calc(var(--vh) * 100);padding:calc(96px + var(--safe-top)) var(--gutter) 120px;align-items:center;display:flex;position:relative;overflow:hidden}.hl-wall{position:absolute;inset:0}.hl-dots{background:radial-gradient(circle, var(--dots) 2.5px, transparent 3px) 0 0 / 56px 56px;transform:translateY(calc(var(--p,0) * -120px));will-change:transform;position:absolute;inset:0 0 -120px}.hl-hero-hold{--yy:var(--y);left:calc(var(--x) * 1%);top:calc(var(--yy) * 1%);width:calc(clamp(64px, 7.5vw, 118px) * var(--s));transform:translate(-50%, -50%) translateY(calc(var(--p,0) * var(--depth) * -60 * var(--vh))) rotate(calc(var(--r) + var(--p,0) * var(--depth) * 200deg));will-change:transform;position:absolute}.hl-bob{animation:3.6s ease-in-out infinite alternate hl-bob;animation-delay:calc(var(--k) * -.6s);display:block}.hl-off .hl-bob,.hl-off .hl-chips span,.hl-off .hl-cue-arrow,.hl-off .hl-typing i,.hl-scrolling .hl-bob,.hl-scrolling .hl-chips span,.hl-scrolling .hl-cue-arrow,.hl-scrolling .hl-typing i{animation-play-state:paused}@keyframes hl-bob{to{transform:translateY(-7px)rotate(4deg)}}.hl-hero-copy{z-index:2;width:min(620px,56vw);transform:translateY(calc(var(--p,0) * -80px));will-change:transform;position:relative}.hl-scroll-cue{z-index:3;left:50%;bottom:calc(26px + var(--safe-bottom));border:2px solid var(--line);background:var(--surface);min-height:48px;color:var(--text);box-shadow:3px 3px 0 var(--edge);opacity:clamp(0, calc(1 - var(--p,0) * 4), 1);will-change:opacity;border-radius:999px;align-items:center;gap:10px;padding:8px 10px 8px 18px;font-size:14px;font-weight:800;display:inline-flex;position:absolute;transform:translate(-50%)}.hl-cue-arrow{border:2px solid var(--line);background:var(--sun);width:32px;height:32px;color:var(--ink);border-radius:50%;place-items:center;animation:1.3s ease-in-out infinite hl-cue;display:grid}@keyframes hl-cue{50%{transform:translateY(5px)}}.hl-sticker{border:2px solid var(--ink);background:var(--lime);color:var(--ink);letter-spacing:.12em;box-shadow:3px 3px 0 var(--edge);border-radius:10px;margin:0 0 20px;padding:6px 12px;font-size:12px;font-weight:800;display:inline-block;transform:rotate(-3deg)}.hl-invited{border:2px solid var(--line);background:var(--surface);max-width:34rem;color:var(--text);box-shadow:3px 3px 0 var(--edge);border-radius:14px;align-items:flex-start;gap:10px;margin:0 0 18px;padding:12px 14px;font-size:15px;line-height:1.4;display:flex}.hl-invited svg{flex:none;margin-top:1px}.hl-hero-copy h1{letter-spacing:-.03em;margin:0 0 20px;font-size:clamp(40px,5.2vw,78px);font-weight:800;line-height:1.02}.hl-hero-copy mark{color:inherit;text-decoration:underline;-webkit-text-decoration-color:var(--coral);text-decoration-color:var(--coral);text-underline-offset:.1em;background:0 0;text-decoration-thickness:.16em}.hl-lead{max-width:33em;color:var(--muted);margin:0 0 26px;font-size:17px;line-height:1.6}.hl-ctas{flex-wrap:wrap;gap:14px;display:flex}.hl-hero-copy:before{content:"";z-index:-1;background:var(--bg);box-shadow:0 0 40px 30px var(--bg);pointer-events:none;border-radius:40px;position:absolute;inset:-8px -16px}.hl .button{min-height:54px;box-shadow:4px 4px 0 var(--edge);padding:13px 24px;font-size:15px}.hl .button:hover{box-shadow:5px 5px 0 var(--edge)}.hl .button:active{box-shadow:0 0 0 var(--edge)}.app-store-badge{color:#fff;background:#000;border:1px solid #a6a6a6;border-radius:10px;align-items:center;gap:8px;min-height:48px;padding:6px 16px 6px 12px;line-height:1;text-decoration:none;display:inline-flex}.app-store-badge svg{width:26px;height:26px;margin-top:-3px}.app-store-badge span{letter-spacing:-.01em;text-align:left;gap:2px;font-size:20px;font-weight:600;display:grid}.app-store-badge small{letter-spacing:0;font-size:11px;font-weight:500}.app-store-badge:hover{border-color:#fff}.hl .app-store-badge{border:2px solid var(--line);min-height:54px;box-shadow:4px 4px 0 var(--edge);border-radius:14px;justify-content:center;padding:6px 18px 6px 14px}.hl .app-store-badge span{font-size:19px}.hl-how{height:calc(var(--vh) * 320);position:relative}.hl-how-stage{height:calc(var(--vh) * 100);flex-direction:column;justify-content:center;gap:34px;display:flex;position:sticky;top:0;overflow:hidden}.hl-how h2,.hl-admin h2,.hl-coach h2{letter-spacing:-.03em;margin:0;font-size:clamp(32px,4.8vw,62px);font-weight:800;line-height:1.02}.hl-how h2{margin-inline:auto}.hl-steps{width:max-content;padding:10px calc(var(--gutter) + 24px) 20px var(--gutter);transform:translateX(calc(var(--p,0) * (100vw - 100%)));will-change:transform;gap:30px;margin:0;list-style:none;display:flex}.hl-step{border:2px solid var(--ink);background:var(--hc);width:min(520px,80vw);min-height:430px;color:var(--ink);box-shadow:8px 8px 0 var(--edge);transform:rotate(calc((var(--k) - 1) * 1.6deg));border-radius:32px;align-content:start;gap:12px;padding:30px;display:grid}.hl-step-num{border:2px solid var(--ink);width:66px;height:66px;font:800 28px var(--font-display);background:#fff;border-radius:46% 54% 42% 58%/55% 45%;place-items:center;display:grid}.hl-step h3{margin:12px 0 0;font-size:26px;font-weight:800}.hl-step p{margin:0;font-size:16px;font-weight:600;line-height:1.55}.hl-step-art{margin-top:16px}.hl-chips{flex-wrap:wrap;gap:10px;display:flex}.hl-chips span{border:2px solid var(--ink);background:#fff;border-radius:999px;align-items:center;gap:8px;padding:8px 14px;font-size:14px;font-weight:700;animation:3s ease-in-out infinite alternate hl-bob;display:inline-flex}.hl-chips span:nth-child(2n){animation-delay:-1.2s}.hl-chips span:before{content:"";border:2px solid var(--ink);background:var(--hc);border-radius:46% 54% 42% 58%/55% 45%;width:12px;height:12px}.hl-mini-cal{grid-template-columns:repeat(7,1fr);gap:8px;display:grid}.hl-mini-cal span{aspect-ratio:1;border:2px solid var(--ink);background:#ffffffb8;border-radius:10px;place-items:center;display:grid}.hl-mini-cal i{aspect-ratio:1;border:2px solid var(--ink);background:var(--hc);border-radius:46% 54% 42% 58%/55% 45%;width:58%}.hl-mini-chat{gap:10px;display:grid}.hl-mini-chat span{border:2px solid var(--ink);background:#fff;border-radius:16px;align-items:center;gap:8px;width:fit-content;padding:10px 14px;font-size:14px;font-weight:700;display:inline-flex}.hl-mini-chat .hl-mini-you{border-bottom-right-radius:4px;justify-self:end}.hl-mini-chat .hl-mini-coach{border-bottom-left-radius:4px}.hl-mini-chat .hl-mini-streak{background:var(--sun)}.hl-admin{padding:40px 0 120px;position:relative}.hl-marquee{border-block:2px solid var(--line);background:var(--ink);color:var(--sun);white-space:nowrap;margin:30px -40px 90px;padding:16px 0;overflow:hidden;transform:rotate(-2deg)}@media (prefers-color-scheme:dark){.hl-marquee{background:var(--sun);color:var(--ink)}}.hl-marquee span{font:800 clamp(20px, 3vw, 34px) var(--font-display);text-transform:uppercase;transform:translateX(calc(var(--p,.5) * -45%));will-change:transform;display:inline-block}.hl-section-lead{max-width:38em;color:var(--muted);margin:18px 0 44px;font-size:18px;line-height:1.6}.hl-bento{grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:minmax(200px,auto);gap:22px;display:grid}.tile-plans{grid-area:span 2/span 2}.tile-maintain{grid-column:span 2}.hl-tile{--show:clamp(0, calc(var(--p,1) * 1.6 - var(--k) * .15), 1);border:2px solid var(--ink);background:var(--hc);color:var(--ink);box-shadow:6px 6px 0 var(--edge);opacity:var(--show);transform:translateY(calc((1 - var(--show)) * 70px)) rotate(calc((1 - var(--show)) * -6deg)) scale(calc(.9 + var(--show) * .1));will-change:transform, opacity;border-radius:28px;align-content:end;gap:8px;padding:26px;display:grid;position:relative;overflow:hidden}.hl-tile-icon{z-index:1;border:2px solid var(--ink);background:#fff;border-radius:46% 54% 42% 58%/55% 45%;place-items:center;width:54px;height:54px;margin-bottom:auto;display:grid;position:relative}.hl-tile h3{z-index:1;margin:18px 0 0;font-size:20px;font-weight:800;position:relative}.tile-plans h3{font-size:clamp(26px,3vw,38px)}.hl-tile p{z-index:1;margin:0;font-size:15px;font-weight:600;line-height:1.5;position:relative}.hl-tile-hold{width:170px;transform:rotate(calc(var(--show) * 80deg));will-change:transform;position:absolute;top:-34px;right:-34px}.tile-plans .hl-tile-hold{width:300px;top:-40px;right:-60px}.hl-coach{height:calc(var(--vh) * 260);position:relative}.hl-coach-stage{height:calc(var(--vh) * 100);grid-template-columns:minmax(0,1fr) minmax(0,540px);align-items:center;gap:60px;display:grid;position:sticky;top:0}.hl-chat{border:2px solid var(--line);background:var(--surface);max-height:calc(100svh - 150px);box-shadow:8px 8px 0 var(--edge);border-radius:30px;flex-direction:column;display:flex;overflow:hidden}.hl-chat-head{border-bottom:2px solid var(--line);font-family:var(--font-display);align-items:center;gap:10px;padding:14px 20px;font-size:15px;font-weight:800;display:flex}.hl-chat-avatar{border:2px solid var(--line);background:var(--violet);width:36px;height:36px;color:var(--ink);border-radius:46% 54% 42% 58%/55% 45%;place-items:center;display:grid}.hl-chat-body{flex-direction:column;flex:1;justify-content:flex-end;min-height:0;margin:0;padding:6px 18px 4px;list-style:none;display:flex;overflow:hidden}.hl-bubble{--v:clamp(0, calc((var(--cp) * 7 - var(--k) - .4) * 3), 1);max-height:calc(var(--v) * 260px);margin-top:calc(var(--v) * 12px);padding:calc(var(--v) * 14px) 16px;border:2px solid var(--line);background:var(--soft);opacity:var(--v);transform:translateY(calc((1 - var(--v)) * 16px));border-radius:20px 20px 20px 6px;flex:none;align-items:flex-start;gap:12px;display:flex;overflow:hidden}.hl-bubble-icon{border:2px solid var(--ink);background:var(--hc);width:38px;height:38px;color:var(--ink);border-radius:46% 54% 42% 58%/55% 45%;flex:none;place-items:center;display:grid}.hl-bubble h3{margin:2px 0 4px;font-size:15px;font-weight:800}.hl-bubble p{color:var(--muted);margin:0;font-size:14px;line-height:1.5}.hl-typing{border:2px solid var(--line);background:var(--soft);width:fit-content;opacity:clamp(0, calc((.97 - var(--cp)) * 30), 1);will-change:opacity;border-radius:16px 16px 16px 4px;gap:5px;margin:10px 18px 16px;padding:12px 14px;display:inline-flex}.hl-typing i{background:var(--muted);border-radius:50%;width:7px;height:7px;animation:1.1s ease-in-out infinite typing-bounce}.hl-typing i:nth-child(2){animation-delay:.15s}.hl-typing i:nth-child(3){animation-delay:.3s}.hl-final{min-height:calc(var(--vh) * 90);border-top:2px solid var(--line);text-align:center;background:radial-gradient(circle, var(--dots) 2.5px, transparent 3px) 0 0 / 56px 56px, var(--hero);place-items:center;padding:140px 20px;display:grid;position:relative;overflow:hidden}.hl-fall{--d:clamp(0, calc(var(--p,1) * 1.5 - var(--k) * .08), 1);left:calc(var(--x) * 1%);top:calc(var(--y) * 1%);will-change:transform;width:clamp(64px,8vw,120px);transform:translate(-50%, calc(-50% - (1 - var(--d)) * 70 * var(--vh))) rotate(calc(var(--r) + (1 - var(--d)) * 200deg));position:absolute}.hl-final-holds{pointer-events:none;position:absolute;inset:0}.hl-final-copy{z-index:1;justify-items:center;gap:28px;display:grid;position:relative}.hl-final h2{letter-spacing:-.03em;max-width:11em;margin:0;font-size:clamp(34px,6vw,84px);font-weight:800;line-height:1.02}.hl .landing-footer{padding:22px 0 calc(22px + var(--safe-bottom));font-size:13px}@media (width<=860px){.hl-hero{padding:calc(80px + var(--safe-top)) 20px 150px;align-items:flex-start}.hl-hero-hold{left:calc(var(--xm) * 1%);--yy:var(--ym);width:calc(clamp(46px, 13vw, 66px) * var(--s))}.hl-hero-copy{width:auto}.hl-sticker{margin-bottom:14px}.hl-hero-copy h1{margin-bottom:14px;font-size:clamp(30px,8.6vw,42px)}.hl-lead{margin-bottom:18px;font-size:15px}.hl-ctas{gap:10px}.hl-ctas>*{flex:1 1 0}.hl-ctas .app-store-badge{min-height:50px}.hl-ctas .button{flex:1 1 0;min-height:50px;padding:12px 16px;font-size:14px}.hl-how{height:auto;padding:80px 0 40px}.hl-how-stage{height:auto;position:static;overflow:visible}.hl-steps{will-change:auto;gap:26px;width:auto;padding:0 20px;display:grid;transform:none}.hl-step{--show:clamp(0, calc(var(--p,1) * 1.6), 1);will-change:transform, opacity;width:auto;min-height:0;opacity:var(--show);transform:translateY(calc((1 - var(--show)) * 50px)) rotate(calc((var(--k) - 1) * 1.2deg + (1 - var(--show)) * -5deg));padding:24px}.hl-step h3{font-size:22px}.hl-marquee{margin-bottom:60px}.hl-bento{grid-template-columns:1fr;grid-auto-rows:auto}.tile-plans,.tile-maintain{grid-area:auto}.hl-tile{min-height:190px}.hl-coach{height:auto;padding:20px 0 90px}.hl-coach-stage{grid-template-columns:1fr;gap:30px;height:auto;position:static}.hl-chat{max-height:none}.hl-bubble{--v:clamp(0, calc(var(--p,1) * 1.8), 1);will-change:transform, opacity;max-height:none;margin-top:12px;padding:14px 16px}.hl-typing{display:none}.hl-final{min-height:calc(var(--vh) * 80)}}@media (prefers-reduced-motion:reduce){.hl-tile,.hl-step,.hl-bubble,.hl-fall{--p:1}.hl-marquee span{--p:.5}.hl-progress{display:none}.hl-how,.hl-coach{height:auto;padding:90px 0}.hl-how-stage,.hl-coach-stage{height:auto;position:static;overflow:visible}.hl-steps{width:auto;padding:0 var(--gutter);grid-template-columns:repeat(auto-fit,minmax(280px,1fr));display:grid;transform:none}.hl-step{width:auto;transform:none}.hl-chat{max-height:none}.hl-typing{display:none}}.admin-stats{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin-bottom:18px;display:grid}.admin-stat{border:2px solid var(--line);background:var(--surface);box-shadow:var(--shadow-sm);border-radius:18px;gap:2px;padding:14px 16px;display:grid}.admin-stat-icon{border:2px solid var(--line);background:var(--violet);width:32px;height:32px;color:var(--ink);border-radius:10px;place-items:center;margin-bottom:6px;display:grid}.admin-stat small{color:var(--muted);font-weight:700}.admin-stat strong{font-family:var(--font-display);font-variant-numeric:tabular-nums;font-size:26px;line-height:1.1}.admin-stat .muted{font-size:13px}.admin-usage .admin-stat{box-shadow:none;background:var(--surface-2)}.admin-budget{border:2px solid var(--line);background:var(--surface-2);border-radius:999px;height:12px;margin:-4px 0 18px;overflow:hidden}.admin-budget span{background:var(--coral);height:100%;display:block}.admin-bars{grid-template-columns:repeat(14,1fr);align-items:end;gap:6px;height:140px;margin-bottom:18px;display:grid}.admin-bar{text-align:center;grid-template-rows:1fr auto;align-items:end;height:100%;display:grid}.admin-bar span{border:2px solid var(--line);background:var(--teal);border-radius:8px 8px 3px 3px;display:block}.admin-bar small{color:var(--muted);margin-top:4px;font-size:11px}.admin-list{gap:8px;margin:0 0 18px;padding:0;list-style:none;display:grid}.admin-list li{border:2px solid var(--line);border-radius:14px;gap:2px;padding:10px 14px;display:grid}.admin-list .muted{font-size:13px}.admin-search{border:2px solid var(--line);background:var(--surface);border-radius:12px;align-items:center;gap:8px;min-height:44px;padding:0 12px;display:flex}.admin-search input{outline-offset:4px;background:0 0;border:0;min-height:40px}.admin-table-wrap{border:2px solid var(--line);border-radius:16px;overflow-x:auto}.admin-table{border-collapse:collapse;width:100%;min-width:760px;font-size:14px}.admin-table th,.admin-table td{text-align:left;vertical-align:top;border-bottom:1px solid var(--border);font-variant-numeric:tabular-nums;padding:10px 12px}.admin-table th{background:var(--surface-2);text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-size:12px}.admin-table tbody tr:last-child td{border-bottom:0}.admin-table td small{font-size:12px;display:block}.admin-link .button{margin-top:8px}.admin-controls{flex-wrap:wrap;gap:10px;margin-bottom:12px;display:flex}.admin-controls .admin-search{flex:220px}.admin-filter{align-items:center;gap:8px;font-size:14px;font-weight:700;display:flex}.admin-filter select{min-height:44px}.admin-sort{color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:4px;padding:0;display:inline-flex}.admin-table th[aria-sort=ascending],.admin-table th[aria-sort=descending]{color:var(--ink)}.admin-gym-table{min-width:480px}.admin-failure-table td:nth-child(3){min-width:240px}.admin-failure-table td:first-child{white-space:nowrap}.admin-tool-error-table td:nth-child(2){min-width:260px}.admin-tool-error-occurrences ul{margin:0;padding-left:18px;font-size:14px}.admin-actions{white-space:nowrap;margin-top:6px}.admin-actions .text-button+.text-button{margin-left:10px}.admin-pager{justify-content:space-between;align-items:center;gap:10px;margin-top:12px;font-size:14px;display:flex}.admin-pager .text-button:disabled{opacity:.4;cursor:default}.shared-gym.admin-gym-edit{border-top:0;margin-top:0;padding-top:0}.admin-zones{gap:6px;margin:0;padding:0;font-size:14px;list-style:none;display:grid}.admin-zones li{grid-template-columns:minmax(0,12rem) 1fr 3ch;align-items:center;gap:10px;display:grid}.admin-zones li>span:first-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.admin-zone-bar{background:var(--soft);border-radius:999px;height:10px}.admin-zone-bar>span{border-radius:inherit;background:var(--primary);height:100%;display:block}.admin-zones strong{text-align:right;font-variant-numeric:tabular-nums}.admin-account-open{color:var(--primary);font:inherit;text-align:left;text-underline-offset:3px;overflow-wrap:anywhere;cursor:pointer;background:0 0;border:0;align-items:center;gap:2px;padding:0;font-weight:800;text-decoration:underline;display:inline-flex}.admin-account-open svg{flex:none}.admin-account,.admin-preview{gap:16px;display:grid}.admin-account-head h2{overflow-wrap:anywhere;margin:0 0 4px}.admin-account-head>p{margin:0 0 14px}.admin-account-head>.admin-account-facts{flex-wrap:wrap;gap:8px;margin:0;display:flex}.admin-account-facts span{border:2px solid var(--line);background:var(--soft);border-radius:999px;align-items:center;gap:6px;padding:6px 12px;font-size:14px;display:inline-flex}.admin-account-lists{gap:16px;display:grid}@media (width>=960px){.admin-account-lists{grid-template-columns:1fr 1fr;align-items:start}}.admin-account-lists .panel{margin:0}.admin-session-list .session-card{width:100%;margin-bottom:10px}.admin-preview-note{border:2px solid var(--line);background:var(--soft);color:var(--text);border-radius:16px;align-items:flex-start;gap:10px;margin:0;padding:12px 14px;font-size:14px;display:flex}.admin-preview-note svg{color:var(--primary);flex:none;margin-top:2px}.admin-bars-8{grid-template-columns:repeat(8,1fr)}.admin-cohort-table,.admin-push-table{min-width:520px}.admin-cohort-cell{background:color-mix(in srgb, var(--teal) var(--share,0%), transparent);font-variant-numeric:tabular-nums}.admin-retention h3{align-items:center;gap:6px;display:flex}.progress-stats{margin-bottom:var(--overview-gap);grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:14px;display:grid}.stat-card{border:2px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:20px;align-content:start;gap:2px;padding:16px;display:grid}.stat-card-icon{border:2px solid var(--line);background:var(--hc,var(--violet));width:36px;height:36px;color:var(--ink);border-radius:46% 54% 42% 58%/55% 45%;place-items:center;margin-bottom:8px;display:grid}.stat-card .stat-card-icon{color:var(--ink);font-size:inherit;place-items:center;line-height:1;display:grid}.stat-card small{color:var(--muted);font-weight:700}.stat-card strong{font-family:var(--font-display);font-size:clamp(22px,3vw,28px);line-height:1.15}.stat-card .muted{font-size:13px}.range-chips{flex-wrap:wrap;gap:6px;display:flex}.range-chips button{border:2px solid var(--line);background:var(--surface);min-height:40px;color:var(--text);border-radius:999px;padding:6px 14px;font-size:13px;font-weight:700}.range-chips button[aria-pressed=true]{background:var(--primary);border-color:var(--primary);color:var(--on-primary)}.line-chart{color:var(--primary);margin:8px 0 0;position:relative}.line-chart-svg{width:100%;height:auto;display:block;overflow:visible}.line-chart-max{color:var(--muted);margin-bottom:2px;font-size:12px;font-weight:700;display:block}.line-chart-dates{color:var(--muted);justify-content:space-between;margin-top:6px;font-size:12px;font-weight:600;display:flex}.minutes-chart{color:var(--teal)}.line-chart-grid{stroke:var(--border);stroke-dasharray:4 6}.line-chart-line{fill:none;stroke:currentColor;stroke-width:3.5px;stroke-linecap:round;stroke-linejoin:round}.line-chart-dot{fill:var(--surface);stroke:var(--line);stroke-width:2.5px}.progress-duo{gap:var(--overview-gap);margin-bottom:var(--overview-gap);grid-template-columns:repeat(auto-fit,minmax(300px,1fr));display:grid}.progress-duo .panel{margin:0}.heatmap{grid-auto-columns:1fr;grid-auto-flow:column;gap:4px;max-width:460px;display:grid}.heatmap-week{gap:4px;display:grid}.heatmap-day{aspect-ratio:1;background:color-mix(in srgb, var(--text) 8%, transparent);border-radius:4px}.heatmap-day.level-1{background:color-mix(in srgb, var(--teal) 45%, transparent)}.heatmap-day.level-2{background:var(--teal)}.heatmap-day.level-3{background:color-mix(in srgb, var(--teal) 70%, var(--ink))}.heatmap-day.future{outline:1px dashed var(--border);outline-offset:-1px;background:0 0}.facet-balance-bar{border:2px solid var(--line);border-radius:999px;height:22px;margin:6px 0 14px;display:flex;overflow:hidden}.facet-balance-bar span{background:var(--facet);flex-basis:0}.facet-balance-bar span+span{border-left:2px solid var(--line)}.facet-balance ul{gap:8px;margin:0;padding:0;list-style:none;display:grid}.facet-balance li{align-items:center;gap:10px;font-weight:600;display:flex}.facet-balance li .facet-badge{width:28px;height:28px}.facet-balance li strong{font-variant-numeric:tabular-nums;margin-left:auto}.exercise-progress-list{gap:10px;display:grid}.exercise-progress{border:2px solid var(--line);background:var(--surface);width:100%;color:var(--text);text-align:left;box-shadow:var(--shadow-sm);border-radius:18px;grid-template-columns:auto minmax(0,1fr) 90px auto;align-items:center;gap:14px;padding:12px 14px;display:grid}.exercise-progress:hover{background:var(--surface-2)}.exercise-progress-text{gap:2px;min-width:0;display:grid}.exercise-progress-text small{color:var(--muted);overflow-wrap:anywhere}.exercise-progress .best-value{text-align:right;overflow-wrap:anywhere;justify-items:end;gap:2px;max-width:40vw;display:grid}.exercise-progress .best-value small{color:var(--muted);font-weight:700}.sparkline{width:90px;height:30px;overflow:visible}.sparkline path{fill:none;stroke:var(--primary);stroke-width:2.5px;stroke-linecap:round}.sparkline circle{fill:var(--primary)}@media (width<=560px){.progress-stats{gap:10px}.stat-card{padding:12px}.exercise-progress{grid-template-columns:auto minmax(0,1fr);gap:4px 12px}.exercise-progress .sparkline{display:none}.exercise-progress .best-value{text-align:left;grid-column:2;justify-items:start;max-width:none}}.exercise-progress-detail h3{align-items:center;gap:8px;display:flex}.logged-results{gap:6px;margin:0;padding:0;list-style:none;display:grid}.logged-results li{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:12px;padding:8px 0;display:flex}.logged-results li span{gap:2px;display:grid}.logged-results li strong{text-align:right;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;display:flex}.tip-card{margin-bottom:var(--overview-gap);border:2px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);align-items:flex-start;gap:14px;padding:18px 20px;display:flex}.tip-icon{border:2px solid var(--line);background:var(--sun);width:42px;height:42px;color:var(--ink);border-radius:46% 54% 42% 58%/55% 45%;flex:none;place-items:center;display:grid}.tip-card h2{margin:2px 0 6px;font-size:16px}.tip-card p{margin:0 0 6px;line-height:1.55}.tip-card small{font-size:12px}.grip-guide{border:2px solid var(--line);background:var(--surface);border-radius:18px;padding:14px 16px}.grip-guide h3{align-items:center;gap:8px;margin-top:0;display:flex}.grip-guide ul{gap:4px;margin:0 0 10px;padding-left:18px;line-height:1.5;display:grid}.grip-guide a{align-items:center;gap:4px;font-weight:700;display:inline-flex}.target-areas{flex-wrap:wrap;align-items:center;gap:6px 8px;margin:12px 0 0;display:flex}.target-areas>span{color:var(--muted);align-items:center;gap:5px;font-size:13px;font-weight:700;display:inline-flex}.target-areas ul{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.target-areas li{border:1.5px solid var(--line);background:var(--surface);border-radius:999px;align-items:center;gap:5px;padding:2px 10px 2px 7px;font-size:12px;font-weight:700;display:inline-flex}.target-areas li:before{content:"";border:1.5px solid var(--ink);background:var(--coral);border-radius:50%;width:8px;height:8px}.exercise-diagram{--diagram-paper:#fffdf8;--diagram-dot:#292b3d12;--diagram-label:#3d3a4f;--diagram-number:#292b3d;--diagram-scene:#eef4ed;--diagram-halo:#dcebdc;--diagram-scene-line:#b5cbb8;--diagram-kit:#52786c;--diagram-kit-far:#90ada0;--diagram-shirt:#fbfbef;--diagram-accent:#bcd8c4;border:1.5px solid var(--line);background:var(--diagram-paper);box-shadow:var(--shadow-sm);border-radius:24px;margin:20px 0;overflow:clip}.exercise-diagram[data-group=fingers]{--diagram-scene:#edf3fb;--diagram-halo:#dce8f7;--diagram-scene-line:#bacbe5;--diagram-kit:#596e9a;--diagram-kit-far:#97a8c8;--diagram-shirt:#f7faff;--diagram-accent:#c5d7f0}.exercise-diagram[data-group=pulling]{--diagram-scene:#fbf4e4;--diagram-halo:#f4e6bd;--diagram-scene-line:#d7c48f;--diagram-kit:#77704a;--diagram-kit-far:#b3ad8c;--diagram-shirt:#fffaf0;--diagram-accent:#f1d68d}.exercise-diagram[data-group=conditioning]{--diagram-scene:#eaf4f2;--diagram-halo:#d1e9e5;--diagram-scene-line:#a9cdc6;--diagram-kit:#596287;--diagram-kit-far:#98a0bb;--diagram-shirt:#f7fafc;--diagram-accent:#b0dcd3}.exercise-diagram[data-group=flexibility]{--diagram-scene:#fcf0e9;--diagram-halo:#f5dfd0;--diagram-scene-line:#dfbda6;--diagram-kit:#937463;--diagram-kit-far:#c2a794;--diagram-shirt:#fffbf1;--diagram-accent:#f1ccb2}@media (prefers-color-scheme:dark){.exercise-diagram[data-group]{--diagram-paper:#1b1926;--diagram-dot:#ffffff10;--diagram-label:#e9e5f7;--diagram-number:#f6f3ff;--diagram-ink:#0c0b12;--diagram-move:#b3a6ff;--diagram-dark:#1a1924;--diagram-wall:#44505a;--diagram-shirt:#e9e7dc;--diagram-scene:color-mix(in srgb, var(--diagram-accent) 16%, #221f30);--diagram-halo:color-mix(in srgb, var(--diagram-accent) 28%, #221f30);--diagram-scene-line:color-mix(in srgb, var(--diagram-accent) 40%, #221f30);--diagram-kit-far:color-mix(in srgb, var(--diagram-kit) 62%, #221f30)}.exercise-diagram[data-group=climbing]{--diagram-accent:#4f7a60;--diagram-kit:#6f9a8c}.exercise-diagram[data-group=fingers]{--diagram-accent:#4c6390;--diagram-kit:#7488b5}.exercise-diagram[data-group=pulling]{--diagram-accent:#7d6d3a;--diagram-kit:#948c62}.exercise-diagram[data-group=conditioning]{--diagram-accent:#3f7a70;--diagram-kit:#7880a6}.exercise-diagram[data-group=flexibility]{--diagram-accent:#8a5f4a;--diagram-kit:#ad8b78}}.diagram-header{border-bottom:1px solid var(--line);background:linear-gradient(90deg, color-mix(in srgb, var(--diagram-accent) 18%, var(--surface)), var(--surface));justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;display:flex}.diagram-category{color:var(--text);letter-spacing:.04em;align-items:center;gap:6px;font-size:12px;font-weight:750;display:flex}.diagram-view{border:1px solid var(--line);color:var(--text);white-space:nowrap;border-radius:8px;flex:none;padding:4px 8px;font-size:11px;font-weight:650}.diagram-stage{z-index:1;background:var(--diagram-paper);border-bottom:1px solid var(--line);position:sticky;top:-26px}@media (height<=640px){.diagram-stage{position:static}}.diagram-sheet .diagram-stage{position:static}.diagram-sheet-steps{counter-reset:sheet-step;gap:10px;margin:0;padding:16px 16px 16px 18px;list-style:none;display:grid}.diagram-sheet-steps li{counter-increment:sheet-step;grid-template-columns:28px 1fr;align-items:start;gap:10px;font-size:15px;line-height:1.45;display:grid}.diagram-sheet-steps li:before{content:counter(sheet-step);border:2px solid var(--line);background:var(--soft);width:26px;height:26px;color:var(--text);border-radius:50%;place-items:center;font-size:13px;font-weight:800;display:grid}@media (width>=820px){.diagram-body:has(.exercise-steps){grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:start;display:grid}.diagram-body:has(.exercise-steps) .diagram-stage{border-bottom:0;border-right:1px solid var(--line);top:0}.diagram-body .exercise-steps{align-self:stretch}}.diagram-steps{max-width:var(--art-width);background:var(--diagram-paper);grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;margin:0 auto;padding:12px 10px 6px;list-style:none;display:grid}.diagram-steps li{min-width:0;color:var(--diagram-label);border-radius:999px;justify-content:center;align-items:center;gap:6px;padding:5px 8px;display:flex}.diagram-steps b{background:var(--diagram-accent);width:20px;height:20px;color:var(--diagram-number);font-family:var(--font-display);border-radius:50%;flex:none;place-items:center;font-size:11px;display:grid}.diagram-steps strong{text-align:center;min-width:0;font-size:13px;line-height:1.25}.diagram-art{background:radial-gradient(circle, var(--diagram-dot) 1px, transparent 1.5px) 0 0 / 16px 16px, var(--diagram-paper);padding:0 8px 10px}.diagram-art svg{width:100%;max-width:var(--art-width);height:auto;margin:0 auto;display:block;overflow:visible}.diagram-scene-1{opacity:.75}.diagram-focus{color:#453573;background:#f0ebfc;border-top:1px solid #d6cbee;align-items:flex-start;gap:10px;margin:0;padding:12px 16px;display:flex}.diagram-focus-letter{color:#fff;background:#5536db;border-radius:50%;flex:none;place-items:center;width:22px;height:22px;margin-top:2px;font-size:12px;font-weight:800;display:grid}.diagram-focus p{margin:0;font-size:13px;line-height:1.55}.diagram-focus strong{color:#453573;margin-bottom:3px;font-size:11px;font-weight:800;display:block}.diagram-caution{color:#69461e;background:#fff1db;border-top:1px solid #e6d0b2;margin:0;padding:12px 18px;font-size:12px;line-height:1.6}.diagram-legend{background:var(--surface);color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px 14px;padding:8px 16px 10px;font-size:11px;line-height:1.5;display:flex}.diagram-legend>span{align-items:center;gap:6px;display:flex}.diagram-legend>span svg{color:var(--text)}.target-swatch{background:#ff6b5b;border:1px solid #292b3d;border-radius:50%;flex:none;width:10px;height:10px}@media (width<=400px){.diagram-header{padding:9px 12px}.diagram-art{padding-inline:0}.diagram-steps{gap:4px;padding-inline:6px}.diagram-steps li{padding:4px 6px}.diagram-steps strong{font-size:12px}.diagram-focus,.diagram-caution,.diagram-legend{padding-inline:12px}}.page-title+.empty{padding-top:8px}.exercise-tags{align-items:center}.exercise-equipment{color:var(--muted);align-items:center;gap:5px;font-size:13px;font-weight:600;display:inline-flex}.exercise-steps{background:var(--surface);border-top:1px solid var(--line);margin:0;padding:14px 16px 16px}.exercise-diagram .exercise-steps{border-top:0}.exercise-view>.exercise-steps{border:1.5px solid var(--line);border-radius:20px;margin-top:18px}.exercise-view .exercise-steps h3{margin:0 0 8px}.exercise-steps ol{gap:6px;margin:0;padding-left:22px;font-size:15px;line-height:1.5;display:grid}.exercise-view .cues h3,.exercise-view .safety-note h3{margin-top:0}.safety-note ul{gap:4px;margin:0;padding-left:18px;line-height:1.5;display:grid}.exercise-logs{margin:10px 0 0}.exercise-more{border:1.5px solid var(--line);background:var(--surface);border-radius:14px;margin-top:14px;padding:0 14px}.exercise-more summary{cursor:pointer;padding:12px 0;font-weight:700}.exercise-more[open]{padding-bottom:12px}.exercise-source{margin-top:10px}.tag.muted{border-color:var(--line);color:var(--muted);background:0 0}.exercise-more p{margin:0 0 8px;line-height:1.55}.method-row{justify-items:start;gap:8px;margin:10px 0 14px;display:grid}.method-choice{border:2px solid var(--line);background:var(--surface);border-radius:999px;gap:4px;padding:3px;display:inline-flex}.method-choice button{min-height:36px;color:var(--text);white-space:nowrap;background:0 0;border:0;border-radius:999px;padding:6px 16px;font-size:14px;font-weight:700}.method-choice button[aria-pressed=true]{background:var(--sun);color:var(--ink)}.method-row .exercise-equipment{min-height:1.4em}.climbs-field{grid-column:1/-1;justify-items:start;gap:12px;min-width:0;margin-bottom:8px;display:grid}.climbs-field .method-choice{justify-self:stretch;max-width:420px;display:flex}.climbs-field .method-choice button{white-space:normal;flex:1 1 0;min-width:0;padding-inline:10px;line-height:1.2}.climbs-field>.field,.climbs-field>.climbs-total{justify-self:stretch}.climbs-list{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.climbs-list li{border:2px solid var(--line);border-radius:999px;align-items:center;gap:2px;padding:2px 2px 2px 4px;display:flex}.climbs-list select{background:0 0;border:0;width:auto;min-width:64px;font-weight:700}.climbs-list .icon-button{width:32px;height:32px}.climbs-field .form-grid.climbs-total{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px}.climbs-field .form-grid.climbs-total>*{grid-column:auto}input[type=date],input[type=time]{appearance:none;text-align:left;min-width:0;max-width:100%;display:block}input[type=date]::-webkit-date-and-time-value{text-align:left;min-height:1.3em;margin:0}input[type=time]::-webkit-date-and-time-value{text-align:left;min-height:1.3em;margin:0}.field{min-width:0}.plan-building{grid-template-columns:minmax(0,1fr)}.pb-stage{width:100%;min-width:0;max-width:380px}.pb-days{width:100%;max-width:322px}.pb-days span{flex:1 1 0;width:auto;min-width:0}.pb-cal{grid-template-columns:repeat(7,minmax(0,1fr));width:100%;max-width:308px}.pb-balance{width:100%;max-width:230px}.pb-beam{width:100%}.plan-building-text,.plan-building>small{overflow-wrap:break-word;max-width:100%}@media (width<=480px){.pb-days,.pb-cal{gap:4px}}@media (width<=760px){.onboarding .form-footer{z-index:2;padding-bottom:calc(12px + env(safe-area-inset-bottom,0px));margin-bottom:0;bottom:0}.onboarding .form-footer>.button{flex:1 1 0;justify-content:center;min-width:0}.onboarding .form-footer:after{content:"";top:100%;left:calc(-1 * var(--panel-pad,21px));right:calc(-1 * var(--panel-pad,21px));background:var(--surface);pointer-events:none;height:100vh;position:absolute}.onboarding .form-footer:before{content:"";inset:0 calc(-1 * var(--panel-pad,21px));z-index:-1;background:var(--surface);position:absolute}.onboarding-panel{overflow:clip}}.goal-row.personal-row{grid-template-columns:minmax(0,1fr);align-items:start;gap:10px;display:grid}.personal-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.timer-ring{container-type:inline-size}.timer-readout{padding:0 8%}.timer-readout .timer-seconds,.interval-timer.with-setup .timer-readout .timer-seconds{white-space:nowrap;letter-spacing:-.04em;font-size:24cqi}.timer-readout .timer-seconds.long,.interval-timer.with-setup .timer-readout .timer-seconds.long{font-size:19cqi}@media (width<=760px){.onboarding-panel{--panel-pad:21px}.onboarding-panel .plan-building{margin-inline:calc(-1 * var(--panel-pad) + 2px);border-radius:18px}.onboarding-panel>.plan-building:first-child{margin-top:calc(-1 * var(--panel-pad) + 2px)}}.session-log-actions{flex-wrap:wrap;gap:10px;margin:12px 0 16px;display:flex}.session-log-actions>.button{flex:160px;justify-content:center;min-width:0}.personal-create{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:18px;display:grid}.personal-create>.button{white-space:nowrap;justify-content:center;min-width:0}.personal-section h2{margin-top:0}.spin{animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.spin{animation:none}}@media (width<=760px){.modal .form-footer{flex-wrap:wrap}.modal .form-footer>.button{flex:auto;justify-content:center;min-width:0}}.coach-footer{border-top:2px solid var(--line);padding:12px 0}.coach-page .voice-status{margin:0 0 10px;font-size:13px;display:block;position:static}.coach-page .voice-error{margin:0 0 10px}@media (width<=760px){.coach-footer{padding:12px 14px 14px}}.reminder-card p{margin:0 0 12px}.o-banners{gap:var(--overview-gap);margin-bottom:var(--overview-gap);display:grid}.o-banners>*{margin:0}.o-next,.o-week,.o-goals{display:grid}.o-next>*,.o-week>*,.o-goals>*{min-width:0}.o-banners:empty,.o-deload:empty,.o-tip:empty{display:none}@media (width<=760px){.overview-flow{gap:var(--overview-gap);flex-direction:column;display:flex}.overview-flow .home-top,.overview-flow .dashboard-grid{display:contents}.overview-flow>*,.overview-flow .home-top>*,.overview-flow .dashboard-grid>*,.overview-flow .o-deload>*,.overview-flow .o-tip>*,.overview-flow .o-rhythm>*{margin-bottom:0}.o-next,.o-banners{order:1}.o-week{order:2}.o-deload{order:3}.o-coming{order:4}.o-tip{order:5}.o-rhythm{order:6}.o-goals{order:7}}.phase-panel{align-items:flex-start;gap:14px;margin-bottom:18px;display:flex}.phase-panel>div{flex:1;min-width:0}.phase-panel h2{margin:8px 0 6px}.phase-panel p{margin:0}.phase-panel .muted.small{margin-top:8px}.tag.phase{background:var(--surface-2)}.cycle-bar{--facet:var(--f-none);gap:2px;height:10px;margin-top:12px;display:flex;position:relative}.cycle-bar>span{border:1px solid var(--line);background:var(--facet);opacity:.55;border-radius:4px;flex-basis:0}.cycle-bar>span.current{opacity:1}.cycle-bar>i{background:var(--text);border-radius:2px;width:4px;height:18px;margin-left:-2px;position:absolute;top:-4px}@media (width<=760px){.overview-flow .o-deload{gap:var(--overview-gap);display:grid}}.celebrate{z-index:200;background:#1d1a2fb8;place-items:center;padding:16px;animation:.24s ease-out both celebrate-in;display:grid;position:fixed;inset:0;overflow:hidden}.celebrate-card{z-index:1;text-align:center;width:min(440px,100%);max-height:calc(100dvh - 32px);color:var(--text);background:var(--surface);border:3px solid var(--ink);box-shadow:8px 8px 0 var(--ink);border-radius:30px;padding:28px 24px 24px;animation:.52s cubic-bezier(.2,1.4,.4,1) .12s both celebrate-card;position:relative;overflow-y:auto}.celebrate-card h2{font-family:var(--font-display);letter-spacing:-.02em;margin:14px 0 8px;font-size:1.9rem}.celebrate-card p{margin:0 0 18px}.celebrate-medal{width:104px;height:104px;color:var(--ink);background:var(--lime);border:3px solid var(--ink);box-shadow:5px 5px 0 var(--ink);border-radius:50%;place-items:center;margin:0 auto;animation:.7s cubic-bezier(.2,1.6,.4,1) .26s both celebrate-medal;display:grid}.celebrate-close{position:absolute;top:10px;right:10px}.celebrate-actions{justify-content:center}.story-preview{aspect-ratio:9/16;border:3px solid var(--ink);width:min(200px,50%);box-shadow:5px 5px 0 var(--ink);border-radius:16px;margin:0 auto 18px;display:block}.story-preview.loading{background:var(--primary)}.hold-burst{pointer-events:none;position:absolute;inset:0}.hold-burst svg{opacity:0;width:10vmin;min-width:44px;height:10vmin;min-height:44px;animation:hold-burst 1.9s cubic-bezier(.15, .7, .3, 1) var(--d) both;position:absolute;top:calc(50% - 5vmin);left:calc(50% - 5vmin)}@keyframes hold-burst{0%{opacity:1;transform:translate(0)scale(.2)rotate(0)}45%{opacity:1;transform:translate(var(--x), var(--y)) scale(var(--s)) rotate(calc(var(--r) * .6))}to{opacity:0;transform:translate(var(--x), calc(var(--y) + 55vh)) scale(var(--s)) rotate(var(--r))}}@keyframes celebrate-in{0%{opacity:0}}@keyframes celebrate-card{0%{opacity:0;transform:translateY(40px)scale(.85)rotate(-3deg)}}@keyframes celebrate-medal{0%{transform:scale(0)rotate(-40deg)}}.share-prompt p{margin:2px 0 0}@media (prefers-reduced-motion:reduce){.hold-burst{display:none}.celebrate,.celebrate-card,.celebrate-medal{animation:none}}.wd-next{text-align:left;gap:10px;margin:0 0 18px;display:grid}.wd-row{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px;display:grid}.wd-week,.wd-streak{background:var(--surface-2);border:2px solid var(--ink);border-radius:16px;align-content:start;gap:6px;padding:10px 12px;font-size:.9rem;display:grid}.wd-streak{background:var(--sun);color:var(--ink)}.wd-week strong{font-family:var(--font-display);font-size:1.05rem}.wd-streak strong{font-family:var(--font-display);font-size:1.5rem;line-height:1;display:block}.wd-dots{gap:5px;display:flex}.wd-dots i{border:2px solid var(--ink);background:var(--surface);border-radius:6px;width:22px;height:10px}.wd-dots i.on{background:var(--lime)}.wd-pb{border:2px solid var(--ink);background:var(--coral);color:var(--ink);border-radius:999px;justify-self:start;align-items:center;gap:8px;padding:8px 12px;font-size:.88rem;font-weight:700;display:flex}.wd-upnext{text-align:left;font:inherit;color:var(--text);background:var(--soft);border:2px solid var(--ink);box-shadow:var(--shadow-sm);cursor:pointer;border-radius:18px;gap:2px;padding:12px 14px;display:grid}.wd-up-label{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-size:.75rem;font-weight:800}.wd-up-title{font-family:var(--font-display);font-size:1.02rem}.wd-up-meta{color:var(--muted);align-items:center;gap:6px;font-size:.88rem;display:flex}.wd-up-meta svg:last-child{color:var(--primary);margin-left:auto}.celebrate-card:has(.wd-next) .celebrate-medal{width:76px;height:76px}.celebrate-card:has(.wd-next) .celebrate-medal svg{width:42px;height:42px}.wd-actions{grid-template-columns:2fr 1fr;gap:10px;display:grid}.wd-actions .button{white-space:nowrap;justify-content:center;width:100%}.share-sheet{gap:14px;display:grid}.share-preview{aspect-ratio:9/16;border:2px solid var(--line);background:var(--surface-2);text-align:center;border-radius:16px;justify-self:center;place-items:center;width:min(190px,48vw);font-size:13px;display:grid;overflow:hidden}.share-preview img{width:100%;height:100%;display:block}.share-photos-label{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.share-photos-label small{color:var(--muted)}.share-photos{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.share-photo{aspect-ratio:1;border:2px solid var(--line);background:var(--surface);opacity:.55;cursor:pointer;border-radius:12px;padding:0;position:relative;overflow:hidden}.share-photo.on{border:3px solid var(--primary);opacity:1}.share-photo img{object-fit:cover;width:100%;height:100%;display:block}.share-tick{background:var(--primary);width:22px;height:22px;color:var(--on-primary);border-radius:50%;place-items:center;display:grid;position:absolute;top:5px;right:5px}.share-add{color:var(--text);opacity:1;border-style:dashed;place-content:center;justify-items:center;gap:2px;font-size:13px;font-weight:700;display:grid}.share-note{margin:0;font-size:13px}.share-sheet>.button{width:100%}.gym-picker{background:var(--surface-2);border:2px solid var(--line);border-radius:20px;grid-template-columns:minmax(0,1fr);gap:12px;min-width:0;margin:12px 0 16px;padding:16px;display:grid}.gym-picker h3{font-family:var(--font-display);margin:0;font-size:1.05rem}.gym-picker .error{margin:0}.gym-search{position:relative}.gym-search svg{color:var(--muted);pointer-events:none;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.gym-search input{width:100%;min-width:0;padding-left:42px}.gym-results-title{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin:0 0 6px;font-size:.78rem;font-weight:800}.gym-results{background:var(--surface);border:2px solid var(--line);border-radius:14px;margin:0;padding:0;list-style:none;overflow:hidden}.gym-results li+li{border-top:1px solid var(--line-soft,#7f789659)}.gym-results button{text-align:left;width:100%;min-height:56px;color:var(--text);cursor:pointer;font:inherit;background:0 0;border:0;align-items:center;gap:12px;padding:10px 14px;display:flex}.gym-results button:hover,.gym-results button:focus-visible{background:var(--surface-2)}.gym-results button>svg{color:var(--primary);flex:none}.gym-result-text{flex:1;min-width:0;display:grid}.gym-result-text span{color:var(--muted);font-size:.9rem}.gym-result-add{color:var(--primary);flex:none;align-items:center;gap:4px;font-size:.9rem;font-weight:800;display:inline-flex}.gym-results button.added{cursor:default;background:0 0}.gym-results button.added .gym-result-add{color:var(--muted)}.gym-other{border-top:2px dashed var(--line-soft,#7f789659);gap:12px;margin-top:4px;padding-top:14px;display:grid}.gym-option{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;display:flex}.gym-option>span{flex:180px;gap:2px;min-width:0;display:grid}.gym-option small{color:var(--muted);font-size:.85rem}.gym-option>button{flex:none}.gym-status,.gym-missing{margin:0}.gym-add-this{justify-self:start;margin-top:4px}.gym-picker fieldset{border:0;margin:0;padding:0}.gym-picker legend{margin-bottom:8px;font-size:.8rem;font-weight:700}.gym-picker button{white-space:normal;max-width:100%}.celebrate-reminders{border-top:2px dashed var(--line-soft,#1d1a2f33);margin:4px 0 0;padding-top:16px}.celebrate-reminders p{justify-content:center;align-items:center;gap:8px;font-weight:700;display:flex}.collapsible>summary{cursor:pointer;align-items:center;gap:10px;min-height:44px;list-style:none;display:flex}.collapsible>summary::-webkit-details-marker{display:none}.collapsible-title{flex:1;min-width:0;display:grid}.collapsible-title strong,.collapsible-title small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.collapsible-chevron{flex:none;transition:transform .16s}.collapsible[open]>summary{margin-bottom:12px}.collapsible[open] .collapsible-chevron{transform:rotate(180deg)}.collapsible>summary .tag{border:2px solid var(--line);background:var(--lime);color:var(--ink);border-radius:999px;flex:none;padding:2px 10px;font-size:.75rem;font-weight:800}.availability-row.collapsible .availability-head{justify-content:flex-end}.shared-gym{border-top:2px dashed var(--line-soft,#7f789659);gap:10px;margin-top:12px;padding-top:12px;display:grid}.shared-gym h3{font-family:var(--font-display);margin:0;font-size:1rem}.shared-gym p{margin:0}.shared-gym-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.shared-gym fieldset{border:0;margin:0;padding:0}.shared-gym legend{margin-bottom:8px;font-size:.8rem;font-weight:700}@media (prefers-reduced-motion:reduce){.collapsible-chevron{transition:none}}.settings-grid{grid-template-columns:minmax(0,1fr);align-items:start;gap:16px}.terms-gate{z-index:300;background:#1d1a2fb8;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.terms-gate-card{width:min(480px,100%);max-height:calc(100dvh - 32px);color:var(--text);background:var(--surface);border:3px solid var(--ink);box-shadow:8px 8px 0 var(--ink);border-radius:26px;padding:24px;overflow-y:auto}.terms-gate-card h2{font-family:var(--font-display);margin-top:0}.terms-check{margin:12px 0;font-weight:700}.terms-plan{margin-bottom:14px}.footer-links{flex-wrap:wrap;justify-content:flex-end;gap:6px 16px;display:flex}.landing-footer,.site-footer{flex-wrap:wrap;gap:12px 20px}.cycle-phases-head,.cycle-phases li{grid-template-columns:minmax(0,1fr) 64px 40px;align-items:center;gap:8px;display:grid}.cycle-phases-head{margin-top:12px}.cycle-phases{gap:8px;margin:4px 0 8px;padding:0;list-style:none;display:grid}.cycle-phases select,.cycle-phases input{min-width:0}.cycle-actions{flex-wrap:wrap;align-items:center;gap:12px 20px;margin-bottom:8px;display:flex}.cycle-actions .text-button{align-items:center;gap:4px;display:inline-flex}.cycle-warning{background:var(--deload-soft);color:var(--text);border-radius:12px;margin:0 0 8px;padding:8px 12px}.session-meta{flex-wrap:wrap;gap:2px 0;margin-top:6px;display:flex}.session-meta>span:not(:last-child):after{content:"·";margin:0 6px}.session-notes{color:var(--muted);white-space:pre-wrap;margin:-4px 0 14px;font-size:14px}.live-bar{z-index:20;bottom:calc(16px + var(--safe-bottom));pointer-events:none;justify-content:flex-end;align-items:center;gap:12px;margin:20px 0 0;display:flex;position:sticky}.live-bar>*{pointer-events:auto}.live-bar>.button{min-height:52px;box-shadow:var(--shadow);padding:12px 24px;font-size:16px}.live-bar.running{border:2px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:18px;justify-content:space-between;padding:8px 8px 8px 16px}.live-bar.running>.button{box-shadow:var(--shadow-sm)}.live-clock{font-variant-numeric:tabular-nums;align-items:center;gap:6px;font-size:22px;font-weight:800;display:inline-flex}.live-count{color:var(--muted);margin-right:auto;font-size:13px;font-weight:700}@media (width<=760px){.live-bar{bottom:calc(66px + var(--nav-bottom,0px))}.live-bar>.button:only-child{flex:1;justify-content:center}.live-bar.running{gap:8px}}.activity-title .tick{border:2px solid var(--line);background:var(--surface);color:#0000;cursor:pointer;border-radius:50%;flex:none;place-items:center;width:34px;height:34px;padding:0;display:inline-grid}.activity-title .tick[aria-checked=true]{background:var(--primary);color:var(--on-primary)}.activity-card.done{opacity:.7}.activity-card.done .activity-title .link-button{text-decoration:line-through}.resume-bar .live-count{flex:1;min-width:0}.resume-bar .live-count strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:14px;display:block;overflow:hidden}.live-banner{border:2px solid var(--line);background:var(--lime);color:var(--ink);box-shadow:var(--shadow-sm);border-radius:18px;align-items:center;gap:12px;margin:0 0 16px;padding:12px 16px;display:flex}.live-banner strong,.live-banner small{display:block}.live-banner small{font-size:13px}.live-banner{flex-wrap:wrap}.live-banner>span:not(.live-dot){flex:180px;min-width:0}.live-banner .button{flex:none}.activity-links{flex-wrap:wrap;align-items:center;gap:4px 16px;display:flex}html.live-mode{--bg:#fbf6ee;--surface:#fff;--surface-2:#fff9f1;--text:#1d1a2f;--muted:#4a4560;--border:#e7ddcd;--line:#1d1a2f;--edge:#1d1a2f;--green:#5536db;--soft:#f0ebff;--hero:#fff0d2;--primary:#5536db;--on-primary:#fff;--focus:#5536db;--f-none:#e7ddcd;--deload:#2f5d7c;--deload-soft:#e6eef4;--live-bg:#a6de4a;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:var(--live-bg);color:var(--text)}html.live-mode[data-live-phase=rest]{--live-bg:#ff9a3c}html.live-mode[data-live-phase=paused]{--live-bg:#cdc6de}@media (prefers-color-scheme:dark){html.live-mode{--bg:#15131d;--surface:#201d2c;--surface-2:#272336;--text:#f6f3ff;--muted:#b6b0cc;--border:#3a3550;--line:#4d4768;--edge:#000;--green:#b9abff;--soft:#2c2743;--hero:#2a2338;--primary:#a594ff;--on-primary:#15131d;--focus:#c3b8ff;--f-none:#4d4768;--deload:#9cc3dd;--deload-soft:#1f2d36;--live-bg:#2e4a12;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}html.live-mode[data-live-phase=rest]{--live-bg:#6b3410}html.live-mode[data-live-phase=paused]{--live-bg:#34304a}}html.live-mode,html.live-mode body{background:var(--live-top,var(--live-bg))}.app-shell.live-mode .main-shell{background:var(--live-bg);min-height:100dvh;transition:background-color .4s}html.live-mode body:before{content:"";z-index:70;height:var(--safe-top);background:var(--live-top,#1d1a2f);pointer-events:none;position:fixed;top:0;left:0;right:0}.app-shell.live-mode .sidebar,.app-shell.live-mode .topbar{display:none}.app-shell.live-mode .main-shell{margin-left:0;padding-bottom:0}.app-shell.live-mode .main-shell>main{max-width:760px;padding:0 0 calc(24px + var(--safe-bottom));margin:0 auto}.app-shell.live-mode .main-shell>main>:not(.live-focus){margin-inline:16px}.app-shell.live-mode .main-shell>main>.notice{z-index:60;right:0;bottom:calc(16px + var(--safe-bottom));width:calc(100% - 32px);max-width:728px;box-shadow:var(--shadow);margin:0 auto;position:fixed;left:0}.session-brief>p{margin:0 0 10px;font-size:15px;line-height:1.5}.brief-focus{gap:6px;margin:0 0 14px;padding:0;list-style:none;display:grid}.brief-focus li{padding-left:20px;font-size:14px;line-height:1.45;position:relative}.brief-focus li:before{content:"";border:2px solid var(--line);background:var(--violet);border-radius:50%;width:9px;height:9px;position:absolute;top:.45em;left:2px}.brief-plan{border-top:2px dashed var(--border);gap:0;margin:4px 0 0;padding:0;list-style:none;display:grid}.brief-plan li{border-bottom:2px dashed var(--border);grid-template-columns:72px 1fr;align-items:start;gap:12px;padding:10px 0;display:grid}.brief-plan li:last-child{border-bottom:0;padding-bottom:0}.brief-minutes{border:2px solid var(--line);background:var(--soft);white-space:nowrap;border-radius:999px;justify-self:start;padding:2px 8px;font-size:13px;font-weight:700}.brief-plan strong{font-size:15px;display:block}.brief-plan small{color:var(--muted);margin-top:2px;font-size:13px;line-height:1.4;display:block}.live-focus{--phase:#a6de4a;border:2px solid var(--ink);background:var(--phase);color:var(--ink);border-radius:24px;flex-direction:column;margin:0 0 18px;transition:background-color .4s;display:flex;overflow:hidden}.live-focus.phase-rest{--phase:#ff9a3c}.live-focus.phase-paused{--phase:#cdc6de}.live-focus.phase-paused .live-time{animation:1.2s steps(2,jump-none) infinite live-blink}@keyframes live-blink{50%{opacity:.35}}.live-main svg{margin:0 auto 4px;display:block}.live-focus{animation:.42s cubic-bezier(.2,.8,.2,1) backwards live-open}.live-focus.leaving-minimise{animation:.28s cubic-bezier(.5,0,.75,0) forwards live-minimise}.live-focus.leaving-stop{animation:.28s ease-in forwards live-stop}@keyframes live-open{0%{opacity:0;transform:translateY(56px)scale(.96)}}@keyframes live-minimise{to{opacity:0;transform:translateY(70%)scale(.9)}}@keyframes live-stop{to{opacity:0;transform:scale(.85)}}@media (prefers-reduced-motion:reduce){.live-focus,.live-focus.leaving-minimise,.live-focus.leaving-stop,.live-focus.phase-paused .live-time{animation:none}}html.live-mode .live-focus{background:0 0;border:0;border-radius:0;min-height:100dvh;margin:0 0 18px}.live-focus .live-banner{padding:calc(10px + var(--safe-top,0px)) 14px 10px;background:var(--ink);color:#fff;box-shadow:none;border:0;border-radius:0;margin:0}html:not(.live-mode) .live-focus .live-banner{padding-top:10px}@media (display-mode:standalone){html.live-mode .live-focus .live-banner{padding-top:calc(24px + var(--safe-top,0px))}}.live-focus .live-banner{flex-wrap:nowrap}.live-focus .live-banner .icon-button{color:#fff}.live-coach-button{width:44px;height:44px;color:var(--ink);cursor:pointer;background:#fff;border:2px solid #fff;border-radius:50%;flex:none;place-items:center;margin-left:auto;display:grid}.live-focus .live-banner small{opacity:.85}.live-phase{letter-spacing:.08em;text-align:center;text-transform:uppercase;margin:min(18px,2.4dvh) 16px 0;font-size:15px;font-weight:800}.live-time{font-family:var(--font-display);font-variant-numeric:tabular-nums;letter-spacing:-.04em;text-align:center;margin:0 8px;font-size:clamp(64px,min(24vw,15dvh),170px);font-weight:800;line-height:1;display:block}.live-exercise{text-align:center;grid-template-columns:48px minmax(0,1fr) 48px;align-items:center;gap:4px;margin:12px 8px 0;display:grid}.live-exercise>div{grid-column:2;gap:4px;min-width:0;display:grid}.live-toolbar .icon-button{color:var(--ink)}.live-exercise .icon-button{color:var(--ink);background:0 0}.live-exercise .icon-button:last-child{grid-column:3}.live-exercise.all-done{padding:0 16px;font-size:18px;display:block}.live-next-title{min-width:0;color:var(--ink);font-family:var(--font-display);overflow-wrap:anywhere;cursor:pointer;background:#fff;border-radius:10px;padding:8px 10px;font-size:clamp(24px,6.5vw,34px);line-height:1.1;display:block}.live-next-meta{flex-wrap:wrap;justify-content:center;gap:4px 14px;font-size:15px;font-weight:700;display:flex}.live-stats{justify-content:space-between;gap:12px;margin:min(18px,2.4dvh) 20px min(16px,2dvh);display:flex}.live-stats>span{flex:1}.live-stats .live-count{color:inherit;margin:0}.live-stats>span{display:grid}.live-stats>span:nth-child(2){text-align:center}.live-stats>span:last-child:not(:first-child){text-align:right}.live-stats strong{font-family:var(--font-display);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:clamp(18px,5vw,26px);line-height:1.1}.live-stats small{font-size:14px;font-weight:700}.live-controls{background:#1d1a2f1f;gap:14px;margin-top:auto;padding:18px 16px 16px;display:grid}.live-main-row{grid-template-columns:64px minmax(0,1fr) 64px;place-items:center;display:grid}.live-side{gap:10px;display:grid}.live-round[aria-pressed=true]{background:var(--ink);color:#fff}.live-main{aspect-ratio:1;border:3px solid var(--ink);width:min(150px,40vw,20dvh);color:var(--ink);font-family:var(--font-display);text-transform:uppercase;cursor:pointer;background:#ffffff4d;border-radius:50%;font-size:19px;font-weight:800}.live-main,.live-round{box-shadow:4px 4px 0 var(--ink)}.live-main:active,.live-round:active{box-shadow:2px 2px 0 var(--ink);transform:translate(2px,2px)}.live-round{border:2px solid var(--ink);width:60px;height:60px;color:var(--ink);cursor:pointer;background:0 0;border-radius:50%;place-items:center;display:grid}.button.live-tick{width:100%;min-width:0;color:var(--ink);border-color:var(--ink);background:#fff;justify-content:center}.live-tick svg{flex:none}.live-tick-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.live-toolbar{justify-content:space-between;align-items:center;gap:12px;display:flex}.live-toolbar-start{align-items:center;gap:12px;display:flex}.live-toolbar .live-undo{font-size:15px}.live-focus button:disabled[aria-label=Undo]{opacity:.35;cursor:default}.live-toolbar .text-button{color:var(--ink);font-weight:800}@media (height<=650px){.live-controls{gap:8px;padding-block:12px}.live-main{width:min(150px,40vw,16dvh);font-size:16px}}@media (prefers-color-scheme:dark){.live-focus{--phase:#2e4a12;border-color:var(--line);color:var(--text)}.live-focus.phase-rest{--phase:#6b3410}.live-focus.phase-paused{--phase:#34304a}.live-toolbar .icon-button,.live-toolbar .text-button,.live-exercise .icon-button{color:var(--text)}.live-next-title{background:var(--surface);color:var(--text)}.live-controls{background:#00000038}.live-main,.live-round{border-color:var(--text);color:var(--text);box-shadow:4px 4px #000}.live-main{background:#ffffff1a}.live-main:active,.live-round:active{box-shadow:2px 2px #000}.live-round[aria-pressed=true]{background:var(--text);color:var(--ink)}.button.live-tick{background:var(--surface);color:var(--text);border-color:var(--text)}}.live-coach{border:2px solid var(--line);background:color-mix(in srgb, var(--lime) 35%, var(--surface));border-radius:16px;margin:0 0 10px;padding:10px 12px}.live-coach-open{width:100%;min-height:40px;color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;margin:0 0 8px;padding:0;font-size:14px;display:flex}.live-coach-open>span:not(.live-dot){flex:1;min-width:0}.live-coach-chips{scrollbar-width:none;gap:8px;display:flex;overflow-x:auto}.live-coach-chips button{border:2px solid var(--line);background:var(--surface);min-height:40px;color:var(--text);border-radius:999px;flex:none;padding:6px 14px;font-size:13px;font-weight:700}.live-coach-chips button:disabled{opacity:.55}.live-dot{background:var(--coral);width:12px;height:12px;box-shadow:0 0 0 2px var(--ink);border-radius:50%;flex:none;animation:1.4s ease-in-out infinite live-pulse}.live-dot.still{animation:none}@keyframes live-pulse{50%{opacity:.35}}@media (prefers-reduced-motion:reduce){.live-dot{animation:none}}.panel.live-activities{border-color:var(--line);background:color-mix(in srgb, var(--lime) 12%, var(--surface));border-width:2px}.live-activities .activity-title{flex-wrap:wrap}.activity-card.up-next{border:2px solid var(--line);box-shadow:var(--shadow-sm)}.up-next-tag{border:2px solid var(--line);background:var(--sun);color:var(--ink);text-transform:uppercase;border-radius:999px;flex:none;margin-left:auto;padding:2px 8px;font-size:11px;font-weight:800}.up-next-tag.current-tag{background:var(--lime)}.log-activity .log-remove{margin-left:auto}.button.log-planned{background:var(--lime);color:var(--ink);border-color:var(--ink)}.verify-junk{border:2px solid var(--line);background:color-mix(in srgb, var(--sun) 30%, var(--surface));color:var(--text);border-radius:14px;align-items:flex-start;gap:10px;padding:10px 14px;font-size:13px;line-height:1.5;display:flex}.verify-junk svg{flex:none;margin-top:2px}.offline-banner span{flex:1}@media (width<=760px){.modal:has(.auth-modal){max-height:calc(100dvh - 24px)}}@media (height<=700px){.auth-lead{display:none}.modal:has(.auth-modal) header{margin-bottom:12px}.auth-modal .agreement-note{font-size:12px;line-height:1.4}}.quick-add{border:2px solid var(--line);background:var(--surface-2);border-radius:18px;gap:14px;margin:0 0 18px;padding:16px;display:grid}.quick-presets{scrollbar-width:none;gap:8px;margin:0 -16px;padding:2px 16px 4px;display:flex;overflow-x:auto}.quick-presets .chip-button{border:2px solid var(--line);background:var(--surface);color:var(--text);text-align:left;cursor:pointer;border-radius:14px;flex:none;gap:1px;padding:8px 12px;font-size:13px;font-weight:800;display:grid}.quick-presets .chip-button small{color:var(--muted);font-size:11px;font-weight:600}.quick-presets .chip-button:active{transform:translate(1px,1px)}.day-picks{gap:6px;display:flex}.day-picks button{aspect-ratio:1;border:2px solid var(--line);background:var(--surface);min-width:0;color:var(--text);cursor:pointer;border-radius:50%;flex:0 44px;place-items:center;padding:0;font-weight:800;display:grid}.day-picks button.on{background:var(--primary);color:var(--on-primary)}.quick-times{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.quick-times .field{margin:0}.quick-add>.button{white-space:normal;justify-content:center}.quick-add .equipment-chips{margin-bottom:0}.availability-copy{gap:8px;margin-top:4px;font-size:12px;font-weight:800;display:grid}.availability-copy .day-picks button{flex-basis:38px;font-size:13px}.skip-note{border:2px dashed var(--line);border-radius:14px;align-items:flex-start;gap:10px;margin:0 0 16px;padding:12px 14px;font-size:13px;line-height:1.5;display:flex}.skip-note svg{flex:none;margin-top:2px}@media (width<=760px){.quick-add{padding:14px 12px}.quick-presets{margin:0 -12px;padding-inline:12px}.quick-times input[type=time]{padding-inline:8px}}.onboarding-panel{grid-template-columns:minmax(0,1fr)}@media (width<=760px){.onboarding .form-footer:has(.skip-button){gap:8px}.onboarding .form-footer:has(.skip-button)>.button{white-space:nowrap;gap:6px;padding-inline:8px;font-size:15px}}.agreement-note{color:var(--muted);margin:0 0 14px;font-size:13px;line-height:1.5}.agreement-note a{color:var(--text)}.welcome-panel{gap:16px;max-width:560px;display:grid}.verify-banner .row{gap:14px}.level-step{gap:22px;display:grid}.level-step section{gap:10px;min-width:0;display:grid}.level-step h3{margin:0;font-size:16px}.level-step .field{margin:0}.level-grades{border:0;gap:8px;min-width:0;margin:0;padding:0;display:grid}.level-grades legend{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px;font-size:12px;font-weight:800}.level-systems,.level-row,.tag-picks{gap:8px;display:flex}.level-row{scrollbar-width:none;padding:2px 2px 6px;overflow-x:auto}.tag-picks{flex-wrap:wrap}.level-systems button,.level-row button,.tag-picks button{border:2px solid var(--line);background:var(--surface);min-height:40px;color:var(--text);cursor:pointer;border-radius:999px;flex:none;padding:6px 14px;font-size:14px;font-weight:800}.level-systems button{min-height:34px;padding:4px 12px;font-size:12px}.level-systems button.on,.level-row button.on,.tag-picks button.on{background:var(--primary);color:var(--on-primary)}.verify-banner{flex-wrap:wrap;align-items:flex-start;gap:8px 12px}.verify-banner>span:first-of-type{flex:240px}.verify-banner>.row{margin-left:auto}.admin-funnel-chart{scroll-snap-type:x proximity;overscroll-behavior-x:contain;gap:10px;margin:14px 0 0;padding:0 0 10px;list-style:none;display:flex;overflow-x:auto}.admin-funnel-chart li{text-align:center;scroll-snap-align:start;flex:0 0 72px;grid-template-rows:auto 120px 1fr auto;gap:6px;display:grid}.admin-funnel-num{font-variant-numeric:tabular-nums}.admin-funnel-bar{background:var(--surface-2);border:2px solid var(--line);border-radius:12px;align-items:flex-end;display:flex;overflow:hidden}.admin-funnel-bar span{background:var(--primary);width:100%;min-height:2px;display:block}.admin-funnel-chart li.skip .admin-funnel-bar span{background:var(--muted)}.admin-funnel-label{font-size:12px;line-height:1.3}.admin-funnel-chart small{font-variant-numeric:tabular-nums}.missed,.ease-back,.goal-fits{margin-bottom:var(--overview-gap)}.missed h2,.ease-back h2,.goal-fits h2{align-items:center;gap:8px;margin:0 0 4px;display:flex}.missed-list{gap:12px;margin:12px 0 0;padding:0;list-style:none;display:grid}.missed-list li{border:2px solid var(--line);background:var(--surface-2);border-radius:16px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:12px 14px;display:flex}.missed-title{text-align:left;color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;gap:2px;min-width:0;padding:0;display:grid}.missed-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.ease-back,.goal-fits{background:var(--soft);grid-template-columns:auto minmax(0,1fr);align-items:start;gap:14px;display:grid}.ease-back p,.goal-fits p{margin:0 0 12px}@media (width<=560px){.missed-actions{width:100%}.missed-actions>*{flex:auto}}.guest-save{justify-items:start;gap:12px;display:grid}.guest-save h3,.guest-save p{margin:0}.guest-save>.field{justify-self:stretch;gap:8px;margin:6px 0 0}.guest-save>.button{justify-content:center;justify-self:stretch}.guest-save>p.guest-signin{text-align:center;justify-self:center}.onboarding-panel>.guest-save+.form-footer{margin-top:10px}.username-field .fr-search-box{gap:2px}.username-field .fr-search-box input{padding-left:4px}.password-input{display:block;position:relative}.password-input input{width:100%;padding-right:48px}.password-toggle{width:36px;height:36px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:10px;place-items:center;display:grid;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.password-toggle:hover,.password-toggle:focus-visible{color:var(--text)}@media (width<=760px){.section-heading.setup-heading{flex-wrap:wrap;gap:12px}.section-heading.setup-heading>h2{flex:100%}}.subgoal-row{grid-template-columns:minmax(0,2fr) minmax(0,1fr) auto;grid-template-areas:"title date bin";align-items:end;column-gap:12px;display:grid}.subgoal-row>.field:first-child{grid-area:title}.subgoal-row>.field:nth-child(2){grid-area:date}.subgoal-row>.icon-button{grid-area:bin;align-self:start;width:44px;height:44px;margin-top:20px}@media (width<=760px){.subgoal-row{border-bottom:1px solid var(--line-soft,#7f789659);grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"title bin""date date";margin-bottom:14px;padding-bottom:4px}.subgoal-row:not(:has(+.subgoal-row)){border-bottom:0;margin-bottom:0}}.button.dimmed{opacity:.45;cursor:not-allowed;box-shadow:none}.onboarding .form-footer:has(.footer-hint){flex-wrap:wrap}.onboarding-panel>.skip-note{margin:25px 0 0}.onboarding-panel>.skip-note+.form-footer{margin-top:12px}.form-footer>.footer-hint{color:var(--muted);text-align:right;flex-basis:100%;order:-2;margin:0 0 2px;font-size:13px}@media (width<=760px){.form-footer>.footer-hint{text-align:center}}.skip-setup{text-align:center;justify-items:center;gap:8px;margin-bottom:22px;display:grid}.skip-setup .button{justify-content:center;width:100%}.skip-setup .muted{margin:0;font-size:13px}.skip-setup-username{margin-bottom:0}.skip-setup-username h3,.skip-setup-username p{margin:0}.skip-setup-username>.field{text-align:left;justify-self:stretch;gap:8px;margin:6px 0 0}.skip-setup-or{white-space:nowrap;align-items:center;gap:12px;width:100%;margin:14px 0 0;font-size:14px;font-weight:700;display:flex}.skip-setup-or:before,.skip-setup-or:after{content:"";border-top:2px dashed var(--border);flex:1}.climbs-now{border:0;grid-column:1/-1;gap:8px;min-width:0;margin:0 0 16px;padding:0;display:grid}.climbs-now legend{align-items:center;gap:4px;margin-bottom:8px;padding:0;font-size:12px;font-weight:600;display:flex}.info-tip-button{width:28px;height:28px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;margin:-8px 0;padding:0;display:inline-grid}.info-tip-button[aria-expanded=true]{color:var(--primary)}.info-tip{background:var(--surface-2,var(--border));border-radius:12px;margin:0 0 4px;padding:10px 12px;font-size:13px;line-height:1.45}.climbs-now .tag-picks{flex-wrap:nowrap;gap:4px}.climbs-now .tag-picks button{flex:1 1 0;justify-content:center;min-width:0;max-width:64px;padding-inline:0}.climbs-now small{font-size:12px}.username-status{align-items:center;gap:6px;min-height:1.4em;display:flex}.username-status:empty{display:none}.username-status svg{flex:none}.username-status.free{color:var(--primary);font-weight:700}.username-status.bad{color:var(--text)}.username-status.bad svg{color:var(--coral)}.username-status.checking svg{animation:.9s linear infinite username-spin}.fr-search-box.invalid{border-color:var(--coral)}@keyframes username-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.username-status.checking svg{animation:none}}.comeback-options{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;display:grid}.comeback-option{text-align:left;font:inherit;color:var(--text);background:var(--surface);border:2px solid var(--ink);box-shadow:var(--shadow-sm);cursor:pointer;border-radius:18px;flex-direction:column;align-items:flex-start;gap:6px;padding:12px 14px;display:flex}.comeback-option span{gap:2px;display:grid}.comeback-option small{color:var(--muted);font-size:.85rem}.comeback-option svg{color:var(--primary);flex:none}.pause-dates{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:8px 0 14px;display:grid}.pause-dates button{font:inherit;text-align:left;color:var(--text);background:var(--surface-2);border:2px solid var(--line);box-shadow:3px 3px 0 var(--edge);cursor:pointer;border-radius:16px;align-content:center;justify-items:start;gap:2px;padding:10px 12px 10px 40px;display:grid;position:relative}.pause-dates strong{font-weight:800}.pause-dates small{color:var(--muted);font-size:.85rem}.pause-tick{border:2px solid var(--line);background:var(--surface);border-radius:50%;place-items:center;width:20px;height:20px;margin-top:-10px;display:grid;position:absolute;top:50%;left:12px}.pause-dates button.on{color:var(--on-primary);background:var(--primary);border-color:var(--ink)}.pause-dates button.on small{color:var(--on-primary)}.pause-dates button.on .pause-tick{color:var(--ink);border-color:var(--ink);background:#fff}.pause-list{text-align:left;gap:8px;margin:0 0 16px;padding:0;list-style:none;display:grid}.pause-list li{align-items:flex-start;gap:10px;font-size:.92rem;display:flex}.pause-list svg{color:var(--primary);flex:none;margin-top:1px}.pause-pill{font:inherit;color:var(--muted);border:2px solid var(--line);cursor:pointer;background:0 0;border-radius:999px;align-items:center;gap:5px;margin-left:auto;padding:4px 10px;font-size:.82rem;font-weight:800;display:inline-flex}.cant-options{gap:10px;display:grid}.comeback-option.row-option{flex-direction:row;align-items:center;gap:12px}.cant-pick{align-items:end;gap:10px}.cant-pick .field{flex:160px;margin:0}.next-up .cant-link{color:var(--ink);text-underline-offset:3px;justify-self:start;margin-top:4px;font-weight:700;text-decoration:underline}.month-recap{margin-bottom:var(--overview-gap);background:var(--soft);position:relative}.month-recap h2{align-items:center;gap:8px;margin:0 40px 12px 0;display:flex}.month-recap-close{position:absolute;top:14px;right:14px}.recap-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 12px;display:grid}.recap-stats div{background:var(--surface);border:2px solid var(--ink);border-radius:16px;flex-direction:column-reverse;justify-content:flex-end;padding:10px 12px;display:flex}.recap-stats dd{font-family:var(--font-display);overflow-wrap:anywhere;margin:0;font-size:1.35rem;line-height:1.1}.recap-stats dt{color:var(--muted);font-size:.85rem}.recap-line{margin:0 0 14px}@media (width<=560px){.recap-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}.hs-guide{grid-template-columns:auto minmax(0,1fr);grid-template-areas:"intro intro""phone steps""phone actions";align-items:start;gap:18px 28px;display:grid}.hs-intro{grid-area:intro}.hs-intro p{margin:-6px 0 0}.hs-steps{grid-area:steps;gap:10px;margin:0;padding:0;list-style:none;display:grid}.hs-steps li{border:2px solid var(--border);background:var(--surface);border-radius:16px;transition:border-color .25s,background .25s,box-shadow .25s;position:relative;overflow:hidden}.hs-steps li.on{border-color:var(--line);background:color-mix(in srgb, var(--sun) 22%, var(--surface));box-shadow:var(--shadow-sm)}.hs-steps button{width:100%;color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;gap:12px;padding:12px 14px;display:flex}.hs-steps strong,.hs-steps small{display:block}.hs-steps small{color:var(--muted);margin-top:2px;font-size:13px;line-height:1.4}.hs-num{border:2px solid var(--line);background:var(--surface);border-radius:50%;flex:none;place-items:center;width:28px;height:28px;font-size:13px;font-weight:800;display:grid}.hs-steps li.on .hs-num{background:var(--primary);color:var(--on-primary)}.hs-progress{background:var(--primary);transform-origin:0;width:100%;height:4px;animation:linear both hs-progress;position:absolute;bottom:0;left:0}@keyframes hs-progress{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.hs-pager{grid-area:pager;justify-content:center;gap:8px;display:none}.hs-pager button{border:2px solid var(--line);background:var(--surface);width:34px;height:34px;color:var(--text);font:inherit;cursor:pointer;border-radius:50%;font-weight:800}.hs-pager button.on{background:var(--primary);color:var(--on-primary)}.hs-actions{flex-wrap:wrap;grid-area:actions;align-items:center;gap:14px;display:flex}.hs-phone{box-shadow:6px 6px 0 color-mix(in srgb, var(--primary) 55%, transparent);background:#1d1a2f;border:3px solid #1d1a2f;border-radius:38px;grid-area:phone;justify-self:center;padding:10px}.hs-screen{color:#1d1a2f;width:220px;height:440px;font-family:var(--font-body);background:#fbf6ee;border-radius:28px;font-size:12px;position:relative;overflow:hidden}.hs-screen img{display:block}.hs-page,.hs-home,.hs-sheet,.hs-add,.hs-menu,.hs-dialog{position:absolute}.hs-page{inset:0}.hs-status{justify-content:space-between;align-items:center;height:24px;padding:0 18px;font-size:11px;font-weight:800;display:flex}.hs-dots{opacity:.8;background:currentColor;border-radius:3px;width:24px;height:8px}.hs-status.light{color:#fff}.hs-topbar{background:#fff;border-bottom:1px solid #e7ddcd;align-items:center;gap:8px;height:44px;padding:0 8px 0 12px;display:flex}.hs-url{background:#f0ebff;border-radius:999px;flex:1;padding:6px 10px;font-size:11px}.hs-menu-icon,.hs-share-icon{border-radius:50%;flex:none;transition:background .25s,box-shadow .25s}.hs-phone.step-0 .hs-menu-icon,.hs-phone.step-0 .hs-share-icon{background:#ffc53d;box-shadow:0 0 0 6px #ffc53d}.hs-site{gap:10px;padding:14px 16px;display:grid}.hs-site-brand{font-family:var(--font-display);align-items:center;gap:6px;font-weight:800;display:flex}.hs-site-brand img{border-radius:6px;width:20px;height:20px}.hs-hero{background:linear-gradient(135deg,#ff8ccf,#ffc53d);border:2px solid #1d1a2f;border-radius:16px;height:92px}.hs-line{opacity:.8;background:#1d1a2f;border-radius:5px;height:10px}.hs-line.short{opacity:.35;width:64%}.hs-cta{background:#5536db;border:2px solid #1d1a2f;border-radius:10px;width:60%;height:26px}.hs-cards{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.hs-cards span{border:2px solid #1d1a2f;border-radius:12px;height:56px}.hs-cards .coral{background:#ff6b5b}.hs-cards .sky{background:#5cb8ff}.hs-cards .lime{background:#a6de4a}.hs-toolbar{color:#2f6fe0;background:#fffe;border-top:1px solid #e7ddcd;justify-content:space-around;align-items:center;height:48px;padding-bottom:4px;display:flex;position:absolute;bottom:0;left:0;right:0}.hs-target{transition:background .25s}.hs-sheet{background:#f2f2f7;border-radius:18px 18px 0 0;transition:transform .45s cubic-bezier(.2,.8,.2,1);inset:120px 0 0;transform:translateY(105%);box-shadow:0 -8px 30px #1d1a2f40}.hs-phone.step-1 .hs-sheet{transform:none}.hs-sheet-head,.hs-add-body{align-items:center;gap:10px;padding:14px;display:flex}.hs-sheet-head img,.hs-add-body img{border-radius:10px;width:40px;height:40px}.hs-sheet-head small,.hs-add-body small{color:#6b6880;font-size:10px;display:block}.hs-sheet ul{background:#fff;border-radius:12px;margin:0 12px;padding:0;list-style:none;overflow:hidden}.hs-sheet li{border-bottom:1px solid #ececf1;justify-content:space-between;align-items:center;height:40px;padding:0 12px;display:flex}.hs-phone.step-1 .hs-sheet .hs-target{background:#ffe7a3;font-weight:800}.hs-add{background:#f2f2f7;transition:transform .45s cubic-bezier(.2,.8,.2,1);inset:0;transform:translateY(100%)}.hs-phone.step-2 .hs-add{transform:none}.hs-add-head{color:#2f6fe0;justify-content:space-between;align-items:center;height:44px;margin-top:24px;padding:0 10px;display:flex}.hs-add-head strong{color:#1d1a2f;font-size:11px}.hs-add-head .hs-target{border-radius:8px;padding:4px 8px;font-weight:800}.hs-phone.step-2 .hs-add-head .hs-target{background:#ffe7a3}.hs-add-body{background:#fff;border-radius:12px;margin:8px 12px}.hs-menu{opacity:0;transform-origin:100% 0;background:#fff;border-radius:12px;width:168px;margin:0;padding:6px 0;list-style:none;transition:opacity .25s,transform .3s;top:30px;right:6px;transform:scale(.8);box-shadow:0 8px 26px #1d1a2f40}.hs-phone.step-1 .hs-menu{opacity:1;transform:none}.hs-menu li{align-items:center;gap:8px;height:36px;padding:0 12px;display:flex}.hs-phone.step-1 .hs-menu .hs-target{background:#ffe7a3;font-weight:800}.hs-dialog{opacity:0;pointer-events:none;background:#fff;border-radius:18px;gap:14px;padding:16px;transition:opacity .25s,transform .3s;display:grid;top:150px;left:20px;right:20px;transform:scale(.9);box-shadow:0 0 0 400px #1d1a2f66}.hs-phone.step-2 .hs-dialog{opacity:1;transform:none}.hs-dialog-app{align-items:center;gap:8px;display:flex}.hs-dialog-app img{border-radius:50%;width:32px;height:32px}.hs-dialog-buttons{color:#3e6fd8;justify-content:flex-end;gap:8px;font-weight:700;display:flex}.hs-dialog-buttons span{border-radius:8px;padding:4px 8px}.hs-phone.step-2 .hs-dialog-buttons .hs-target{background:#ffe7a3}.hs-home{opacity:0;background:linear-gradient(160deg,#5536db,#a596ff 55%,#ff8ccf);transition:opacity .4s,transform .5s;inset:0;transform:scale(1.08)}.hs-phone.step-3 .hs-home{opacity:1;transform:none}.hs-grid{grid-template-columns:repeat(4,1fr);justify-items:center;row-gap:16px;display:grid;position:absolute;top:44px;left:14px;right:14px}.hs-app{justify-items:center;gap:4px;width:48px;display:grid}.hs-app i,.hs-app img{border-radius:11px;width:40px;height:40px}.hs-app small{background:#ffffff80;border-radius:3px;width:30px;height:6px}.hs-app.c0 i{background:#ff6b5b}.hs-app.c1 i{background:#ffc53d}.hs-app.c2 i{background:#2cc0ad}.hs-app.c3 i{background:#5cb8ff}.hs-app.c4 i{background:#ffffffd0}.hs-app.c5 i{background:#a6de4a}.hs-app.new small{color:#fff;white-space:nowrap;background:0 0;width:auto;height:auto;font-size:9px;font-weight:700}.hs-app.new img{box-shadow:0 0 0 3px #fff}.hs-phone.step-3 .hs-app.new{animation:.6s cubic-bezier(.3,1.6,.5,1) .35s both hs-pop}@keyframes hs-pop{0%{opacity:0;transform:scale(.2)}to{opacity:1;transform:none}}.hs-tap{z-index:5;pointer-events:none;background:#1d1a2f66;border:3px solid #fff;border-radius:50%;width:34px;height:34px;margin:-17px 0 0 -17px;animation:1.5s .7s both hs-tap;position:absolute;box-shadow:0 2px 10px #1d1a2f55}.hs-tap:after{content:"";opacity:0;border:3px solid #fff;border-radius:50%;animation:1.5s ease-out .7s both hs-ripple;position:absolute;inset:-3px}@keyframes hs-tap{0%{opacity:0;transform:scale(1.4)}30%{opacity:1;transform:scale(1)}45%{transform:scale(.8)}60%,to{opacity:1;transform:scale(1)}}@keyframes hs-ripple{0%,40%{opacity:0;transform:scale(1)}45%{opacity:.9}to{opacity:0;transform:scale(2.4)}}@media (width<=760px){.hs-guide{grid-template-columns:minmax(0,1fr);grid-template-areas:"pager""steps""phone""intro""actions";gap:12px}.hs-pager{display:flex}.hs-phone{zoom:.6}.hs-steps li:not(.on),.hs-steps .hs-num{display:none}.hs-steps button{align-items:center;min-height:76px}.hs-intro p{margin:0;font-size:13px}.hs-actions>.button{flex:100%;justify-content:center}.hs-actions>.text-button{margin:0 auto}}@media (prefers-reduced-motion:reduce){.hs-guide *,.hs-guide :after{transition:none!important;animation:none!important}.hs-tap{opacity:1}}@media (orientation:landscape) and (height<=500px) and (pointer:coarse){.app-shell.live-mode .main-shell>main{max-width:none;height:100dvh;padding:0;overflow:hidden}.app-shell.live-mode .main-shell>main>:not(.live-focus):not(.notice){display:none}html.live-mode .live-focus{height:100dvh;min-height:0;padding:max(12px, var(--safe-top)) max(16px, var(--safe-right)) max(12px, var(--safe-bottom)) max(16px, var(--safe-left));grid-template-rows:auto minmax(0,1fr) auto;margin:0;display:grid}html.live-mode .live-focus .live-banner,html.live-mode .live-focus .live-controls,html.live-mode .live-focus .live-stats,html.live-mode .live-focus .live-next-meta,html.live-mode .live-focus button,html.live-mode .live-focus .live-exercise.all-done{display:none}html.live-mode .live-focus .live-phase{margin:0;font-size:clamp(16px,5dvh,24px);line-height:1.2}html.live-mode .live-focus .live-time{white-space:nowrap;align-self:center;margin:0;font-size:min(54dvh,22vw)}html.live-mode .live-focus .live-time[data-long-clock]{font-size:min(54dvh,14vw)}html.live-mode .live-focus .live-exercise{min-width:0;margin:0;display:block}html.live-mode .live-focus .live-next-title{-webkit-line-clamp:2;pointer-events:none;background:0 0;-webkit-box-orient:vertical;padding:0;font-size:clamp(18px,5dvh,26px);line-height:1.2;display:-webkit-box;overflow:hidden}}.admin-tabs button,.model-toolbar .tabs button{text-transform:none}.model-toolbar{flex-wrap:wrap;align-items:center;gap:4px 18px;margin-bottom:16px;display:flex}.model-toolbar .tabs{border:0;margin:0}.model-toolbar .checkbox{margin:0;font-size:14px}.model-actions{flex-wrap:wrap;gap:10px;margin:4px 0 14px;display:flex}.model-add{flex-wrap:wrap;align-items:center;gap:8px;margin:12px 0;display:flex}.model-add input,.model-add select{flex:180px;width:auto}.model-layout{align-items:start;gap:16px;display:grid}.model-layout>.panel{margin-bottom:0}@media (width>=1200px){.model-layout{grid-template-columns:minmax(0,1fr) 300px}.model-details{max-height:calc(100vh - 32px);position:sticky;top:16px;overflow-y:auto}}.model-graph-panel{padding:16px}.model-graph-wrap{padding:4px 4px 8px;overflow-x:auto}.model-graph{position:relative}.model-graph svg{position:absolute;inset:0;overflow:visible}.model-edge{fill:none;stroke:var(--facet,var(--f-none));stroke-linecap:round;transition:opacity .15s}.model-edge.trains{opacity:.85}.model-edge.uses{stroke:var(--muted);opacity:.4}.model-edge.unrated{stroke-dasharray:5 5}.model-edge.dim{opacity:.08}.model-edge.lit{opacity:1}.model-badge circle{fill:var(--surface);stroke:var(--line);stroke-width:2px}.model-badge text{fill:var(--text);font:800 12px var(--font-body)}.model-node{border:2px solid var(--line);background:var(--surface);color:var(--text);font:700 12px/1.2 var(--font-body);text-align:left;box-shadow:inset 6px 0 0 var(--facet,var(--f-none));cursor:pointer;border-radius:12px;align-items:center;padding:4px 8px 4px 14px;display:flex;position:absolute}.model-node-title{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.model-node.session{background:var(--surface-2);border-radius:6px}.model-node.facet{background:var(--facet,var(--f-none));color:var(--ink);text-align:center;box-shadow:none;border-radius:999px;justify-content:center;padding:4px 10px}.model-node.facet.facet-none{background:var(--surface-2);color:var(--text)}.model-node.inactive{border-style:dashed}.model-node.lit{box-shadow:inset 6px 0 0 var(--facet,var(--f-none)), var(--shadow-sm)}.model-node.facet.lit{box-shadow:var(--shadow-sm)}.model-node.dim{border-color:var(--border);color:var(--muted);box-shadow:inset 6px 0 0 var(--border)}.model-node.facet.dim{background:var(--surface-2);box-shadow:none}.model-node[aria-pressed=true]{outline:3px solid var(--primary);outline-offset:2px}.model-legend{color:var(--muted);flex-wrap:wrap;gap:4px 18px;margin:0 0 12px;padding:0;font-size:13px;list-style:none;display:flex}.model-legend li{align-items:center;gap:8px;display:flex}.model-legend .model-edge.trains{stroke:var(--text);opacity:1}.model-details h2{align-items:center;gap:8px;margin:0 0 12px;font-size:18px;display:flex}.model-details h3{margin:18px 0 8px;font-size:14px}.model-connections{gap:8px;margin:0;padding:0;list-style:none;display:grid}.model-connections li{border:2px solid var(--border);border-radius:12px;gap:6px;padding:8px 10px;display:grid}.model-connection-name{flex-wrap:wrap;align-items:center;gap:6px;font-weight:700;display:flex}.model-connection-name .facet-badge{width:24px;height:24px}.model-connection-actions{gap:14px;display:flex}.model-links{gap:4px;margin:0;padding-left:20px;display:grid}.model-hint{font-size:13px}.model-rating{font-weight:700}.model-rating-select,.model-weights select{min-height:36px;padding:4px 8px}.model-weights{min-width:0}.model-weights th[scope=row]{background:var(--surface);min-width:190px;color:var(--text);letter-spacing:0;text-transform:none;font-size:14px}.model-weights td{min-width:112px}.model-weights small{color:var(--muted);font-size:11px;display:block}.model-cell.r0{background:color-mix(in srgb, var(--facet,var(--f-none)) 5%, var(--surface))}.model-cell.r1{background:color-mix(in srgb, var(--facet,var(--f-none)) 8%, var(--surface))}.model-cell.r2{background:color-mix(in srgb, var(--facet,var(--f-none)) 16%, var(--surface))}.model-cell.r3{background:color-mix(in srgb, var(--facet,var(--f-none)) 24%, var(--surface))}.model-cell.r4{background:color-mix(in srgb, var(--facet,var(--f-none)) 32%, var(--surface))}.model-cell.r5{background:color-mix(in srgb, var(--facet,var(--f-none)) 40%, var(--surface))}.model-mermaid pre{border:2px solid var(--line);background:var(--surface-2);border-radius:14px;max-height:480px;margin:0 0 8px;padding:14px;font-size:12px;line-height:1.5;overflow:auto}.model-legend-node{border:2px dashed var(--line);border-radius:5px;width:30px;height:14px}.model-details .text-button,.model-weights .text-button{text-align:left;justify-content:flex-start}.model-weights .text-button{min-height:36px}.model-weights th,.model-weights td{vertical-align:middle;padding:6px 10px}@media (width<=760px){.model-toolbar .tabs{flex:100%}}.model-cell.primary{box-shadow:inset 0 0 0 2px var(--line)}.model-import-problems{display:block}.model-import-problems p{margin:0 0 6px;font-weight:700}.model-import-problems ul{margin:0;padding-left:20px}.hero-image{margin:0 0 18px}.hero-image img{aspect-ratio:3/2;object-fit:cover;border:2px solid var(--line);background:var(--surface-soft,var(--surface));border-radius:22px;width:100%;display:block}.hero-image figcaption{color:var(--muted);text-align:right;margin-top:6px;font-size:12px}.hero-image figcaption a{color:inherit}.coach-intro{z-index:2000;background:radial-gradient(circle, var(--dots) 2px, transparent 2.5px) 0 0 / 28px 28px, var(--bg);cursor:pointer;will-change:transform, opacity;place-content:center;justify-items:center;gap:28px;padding:24px 16px;animation:.6s cubic-bezier(.65,0,.35,1) 4s forwards ci-lift;display:grid;position:fixed;inset:0}.ci-stage{place-items:center;width:160px;height:160px;display:grid;position:relative}.ci-avatar{border:2px solid var(--line);background:var(--violet);width:96px;height:96px;color:var(--ink);box-shadow:var(--shadow);will-change:transform, opacity;border-radius:46% 54% 42% 58%/55% 45%;place-items:center;animation:.7s cubic-bezier(.22,1,.36,1) both ci-pop;display:grid;transform:rotate(-6deg)}.ci-ring{border:2px solid var(--violet);opacity:0;border-radius:50%;animation:2.4s cubic-bezier(.22,1,.36,1) .5s infinite ci-ring;position:absolute;inset:20px}.ci-ring-2{animation-delay:1.7s}.ci-spark{border:2px solid var(--line);opacity:0;border-radius:50%;width:12px;height:12px;animation:.8s cubic-bezier(.22,1,.36,1) both ci-spark;position:absolute}.ci-spark-1{background:var(--sun);animation-delay:.6s;top:12px;left:22px}.ci-spark-2{background:var(--teal);animation-delay:.75s;top:30px;right:10px}.ci-spark-3{background:var(--coral);animation-delay:.9s;bottom:14px;left:34px}.ci-bubbles{justify-items:start;gap:8px;width:min(300px,100%);display:grid}.ci-bubble{border:2px solid var(--line);background:var(--surface);box-shadow:var(--shadow-sm);will-change:transform, opacity;border-radius:18px 18px 18px 6px;align-items:center;gap:6px;margin:0;padding:9px 14px;font-weight:700;animation:.5s cubic-bezier(.22,1,.36,1) both ci-bubble;display:inline-flex}.ci-done{background:var(--lime);color:var(--ink);border-radius:18px 18px 6px;justify-self:end;animation-delay:.6s}.ci-coach{animation-delay:1.4s}.ci-ask{animation-delay:2.3s}@keyframes ci-pop{0%{opacity:0;transform:scale(.6)rotate(-6deg)}to{opacity:1;transform:scale(1)rotate(-6deg)}}@keyframes ci-ring{0%{opacity:.6;transform:scale(.8)}to{opacity:0;transform:scale(1.5)}}@keyframes ci-spark{0%{opacity:0;transform:translateY(8px)scale(.5)}to{opacity:1;transform:translate(0)scale(1)}}@keyframes ci-bubble{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes ci-lift{to{opacity:0;transform:translateY(-24px)}}@media (prefers-reduced-motion:reduce){.coach-intro,.coach-intro *{animation:none!important}.ci-ring,.ci-spark{display:none}}.so{display:grid}.so-card{border:2px solid var(--line);background:var(--facet,var(--violet));color:var(--ink);box-shadow:6px 6px 0 var(--edge);border-radius:28px;margin:12px 0 22px;overflow:hidden}.so-card.facet-none{--facet:var(--violet)}.so-hero{margin:0;position:relative}.so-hero img{border:0;border-bottom:2px solid var(--line);border-radius:0}.so-hero figcaption{color:var(--ink);background:#ffffffd9;border-radius:8px;margin:0;padding:2px 8px;position:absolute;bottom:10px;right:10px}.so-body{align-content:center;justify-items:start;gap:12px;padding:18px 20px 20px;display:grid}.so-label{border:2px solid var(--ink);letter-spacing:.1em;text-transform:uppercase;background:#fff;border-radius:10px;padding:4px 11px;font-size:11px;font-weight:800;transform:rotate(-2deg)}.so-body h1{color:var(--ink);margin:0;font-size:clamp(24px,3vw,34px);line-height:1.1}.so-pills{flex-wrap:wrap;gap:8px;display:flex}.so-pills>span{border:2px solid var(--ink);background:#ffffffc9;border-radius:999px;align-items:center;gap:6px;padding:4px 11px;font-size:13px;font-weight:700;display:inline-flex}.so-actions{align-items:center;gap:10px;width:100%;margin-top:4px;display:flex}.so-start{border:2px solid var(--ink);background:var(--ink);color:#fff;max-width:320px;min-height:52px;font:inherit;border-radius:16px;flex:1;justify-content:center;align-items:center;gap:8px;padding:12px 22px;font-size:16px;font-weight:800;transition:transform .12s;display:inline-flex;box-shadow:3px 3px #fff9}.so-start:active{transform:translate(2px,2px)}.so-edit{border:2px solid var(--ink);width:52px;height:52px;color:var(--ink);background:#fff;border-radius:16px;place-items:center;display:grid}.so-start:focus-visible,.so-edit:focus-visible{outline-offset:2px;outline:3px solid #fff}.so-panel{margin-bottom:18px;padding:20px 22px}.so-lead{margin:0 0 10px;font-size:15px;line-height:1.55}.so-panel .brief-focus{margin-bottom:0}.so-steps{margin:4px 0 0;padding:0;list-style:none;display:grid}.so-steps>li{border-top:2px dashed var(--border);padding:12px 0}.so-steps>li:first-child{border-top:0;padding-top:4px}.so-steps>li:last-child{padding-bottom:0}.so-frame,.so-part-head{grid-template-columns:72px minmax(0,1fr);gap:12px;display:grid}.so-frame{align-items:start}.so-part-head{align-items:center;margin-bottom:10px}.so-part-head:last-child{margin-bottom:0}.so-frame strong,.so-part-head strong{font-size:15px;display:block}.so-frame small{color:var(--muted);margin-top:2px;font-size:13px;display:block}.so-part .brief-minutes{background:var(--sun);color:var(--ink)}.so-row{border:2px solid var(--line);background:var(--surface-2);width:100%;min-width:0;box-shadow:var(--shadow-sm);color:var(--text);font:inherit;text-align:left;border-radius:16px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 12px;display:grid}.so-part>.so-row{width:calc(100% - 84px);margin-left:84px}.so-part>.so-row+.so-row{margin-top:8px}.so-row .facet-badge{width:30px;height:30px}.so-row strong,.so-row small{display:block}.so-row strong{font-size:14.5px}.so-row small{color:var(--muted);margin-top:2px;font-size:12.5px}.so-row>svg{color:var(--muted)}@media (width>=1000px){.so-card{grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}.so-hero{border-right:2px solid var(--line)}.so-body{padding:26px 28px}}@media (width<=760px){.so-card{box-shadow:4px 4px 0 var(--edge)}.so-body{padding:16px 16px 18px}.so-start{max-width:none}.so-panel{padding:16px}.so-part>.so-row{width:100%;margin-left:0}.so-part-head:has(>.so-row){grid-template-columns:minmax(0,1fr);gap:8px}.so-part-head:has(>.so-row)>.brief-minutes{justify-self:start}}.modal:has(>.diagram-sheet){--sheet-pad:26px;padding:0;overflow:auto}.modal:has(>.diagram-sheet)>header{padding:var(--sheet-pad) var(--sheet-pad) 0;margin-bottom:10px}@media (width<=760px){.modal:has(>.diagram-sheet){--sheet-pad:20px}}.diagram-sheet .exercise-diagram{box-shadow:none;background:var(--surface);border:0;border-radius:0;margin:0}.diagram-sheet .diagram-header{padding:0 var(--sheet-pad) 16px;border-bottom:1.5px solid var(--border);background:0 0;justify-content:flex-start;gap:6px}.diagram-sheet .diagram-category,.diagram-sheet .diagram-view{border:1.5px solid var(--border);color:var(--muted);letter-spacing:0;border-radius:999px;align-items:center;gap:5px;padding:3px 10px;font-size:12px;font-weight:700;display:inline-flex}.diagram-sheet .diagram-stage{border-bottom:1.5px solid var(--border)}.diagram-sheet-how{padding:22px var(--sheet-pad) 0}.diagram-sheet-how h3{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;margin:0 0 12px;font-size:12px;font-weight:800}.diagram-sheet .diagram-sheet-steps{gap:12px;padding:0}.diagram-sheet .diagram-sheet-steps li{grid-template-columns:26px 1fr;gap:12px}.diagram-sheet .diagram-sheet-steps li:before{background:var(--soft);color:var(--primary);font-family:var(--font-display);border:0;font-size:12px;font-weight:700}.diagram-sheet .diagram-focus{margin:22px var(--sheet-pad) 0;border-top:1.5px dashed var(--border);color:var(--text);background:0 0;gap:12px;padding:18px 0 0}.diagram-sheet .diagram-focus-letter{width:26px;height:26px;margin-top:0;font-size:13px}.diagram-sheet .diagram-focus p{font-size:15px;line-height:1.5}.diagram-sheet .diagram-focus strong{color:var(--primary);letter-spacing:.04em;text-transform:uppercase;margin-bottom:2px;font-size:12px}.diagram-sheet .diagram-caution{margin:16px var(--sheet-pad) 0;border:0;border-left:3px solid var(--sun);color:var(--text);background:0 0;padding:2px 0 2px 12px;font-size:14px}.diagram-sheet .diagram-legend{padding:18px var(--sheet-pad) var(--sheet-pad);background:0 0;font-size:12px}@media (width>=820px){.modal.wide:has(>.diagram-sheet){width:min(960px,100% - 48px)}.diagram-sheet .exercise-diagram{grid-template-rows:auto auto auto auto 1fr;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);display:grid}.diagram-sheet .diagram-header{grid-column:1/-1}.diagram-sheet .diagram-body{display:contents}.diagram-sheet .diagram-stage{border-bottom:0;border-right:1.5px solid var(--border);background:radial-gradient(circle, var(--diagram-dot) 1px, transparent 1.5px) 0 0 / 16px 16px, var(--diagram-paper);flex-direction:column;grid-area:2/1/-1;justify-content:center;padding:18px 16px 24px;display:flex}.diagram-sheet .diagram-sheet-how,.diagram-sheet .diagram-focus,.diagram-sheet .diagram-caution,.diagram-sheet .diagram-legend{grid-column:2}.diagram-sheet .diagram-sheet-how{padding-top:24px}.diagram-sheet .diagram-legend{align-self:end}}@media (prefers-color-scheme:dark){.diagram-focus{color:#e4ddff;background:#2c2743;border-top-color:#4d4768}.diagram-focus strong{color:#c9bfff}.diagram-caution{color:#f6dcb6;background:#3a2c1a;border-top-color:#5c4528}}.diagram-sheet-plain{padding:0 var(--sheet-pad) var(--sheet-pad)}.diagram-sheet-plain .lead{color:var(--muted);margin:0;font-size:15px;line-height:1.5}.diagram-sheet-plain .diagram-sheet-how{padding:20px 0 0}.diagram-sheet-plain>section:not(.diagram-sheet-how){border:0;border-top:1.5px solid var(--border);background:0 0;border-radius:0;margin:22px 0 0;padding:20px 0 0}.diagram-sheet-plain>section h3{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;margin:0 0 12px;font-size:12px;font-weight:800}.diagram-sheet-plain>.safety-note h3{color:#95501d}@media (prefers-color-scheme:dark){.diagram-sheet-plain>.safety-note h3{color:#f0a46a}}.diagram-sheet-plain>section p{margin:0;line-height:1.55}@media (prefers-color-scheme:dark){html.live-mode .modal:has(>.diagram-sheet){--bg:#15131d;--surface:#201d2c;--surface-2:#272336;--text:#f6f3ff;--muted:#b6b0cc;--border:#3a3550;--line:#4d4768;--edge:#000;--soft:#2c2743;--primary:#a594ff;--on-primary:#15131d;--focus:#c3b8ff;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:var(--surface);color:var(--text)}}.modal:has(>.exercise-view){--sheet-pad:26px;padding:0;overflow:auto}.modal:has(>.exercise-view)>header{padding:var(--sheet-pad) var(--sheet-pad) 0;margin-bottom:10px}@media (width<=760px){.modal:has(>.exercise-view){--sheet-pad:20px}}.exercise-view{padding:0 var(--sheet-pad) var(--sheet-pad)}.exercise-view .exercise-diagram{margin:20px calc(-1 * var(--sheet-pad)) 0;border:0;border-bottom:1.5px solid var(--border);box-shadow:none;background:var(--surface);border-radius:0}.exercise-view .diagram-header{padding:0 var(--sheet-pad);background:0 0;border-bottom:0;justify-content:flex-start;gap:6px}.exercise-view .diagram-category,.exercise-view .diagram-view{border:1.5px solid var(--border);color:var(--muted);letter-spacing:0;border-radius:999px;align-items:center;gap:5px;padding:3px 10px;font-size:12px;font-weight:700;display:inline-flex}.exercise-view .diagram-stage{border-top:1.5px solid var(--border);border-bottom:1.5px solid var(--border);margin-top:12px}.exercise-view .diagram-body .exercise-steps{padding:22px var(--sheet-pad) 0;background:0 0;border:0}.exercise-view .diagram-focus{margin:22px var(--sheet-pad) 0;border-top:1.5px dashed var(--border);color:var(--text);background:0 0;gap:12px;padding:18px 0 0}.exercise-view .diagram-focus-letter{width:26px;height:26px;margin-top:0;font-size:13px}.exercise-view .diagram-focus p{font-size:15px;line-height:1.5}.exercise-view .diagram-focus strong{color:var(--primary);letter-spacing:.04em;text-transform:uppercase;margin-bottom:2px;font-size:12px}.exercise-view .diagram-caution{margin:16px var(--sheet-pad) 0;border:0;border-left:3px solid var(--sun);color:var(--text);background:0 0;padding:2px 0 2px 12px;font-size:14px}.exercise-view .diagram-legend{padding:18px var(--sheet-pad) 20px;background:0 0;font-size:12px}@media (width>=820px){.exercise-view .diagram-body:has(.exercise-steps){align-items:stretch}.exercise-view .diagram-body:has(.exercise-steps) .diagram-stage{border-bottom:0;border-right:1.5px solid var(--border);background:radial-gradient(circle, var(--diagram-dot) 1px, transparent 1.5px) 0 0 / 16px 16px, var(--diagram-paper)}.exercise-view .diagram-body .exercise-steps{padding-top:18px}}.exercise-view .exercise-steps{background:0 0;border:0;border-radius:0;margin:0;padding:0}.exercise-view>.exercise-steps{border:0;margin-top:22px}.exercise-view .exercise-steps ol{counter-reset:page-step;gap:12px;padding:0;list-style:none}.exercise-view .exercise-steps li{counter-increment:page-step;grid-template-columns:26px 1fr;gap:12px;display:grid}.exercise-view .exercise-steps li:before{content:counter(page-step);background:var(--soft);width:26px;height:26px;color:var(--primary);font-family:var(--font-display);border-radius:50%;place-items:center;font-size:12px;font-weight:700;display:grid}.exercise-view h3,.exercise-view .exercise-steps h3{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;margin:0 0 12px;font-size:12px;font-weight:800}.exercise-view h3 svg{width:15px;height:15px}.exercise-view>section:not(.exercise-steps),.exercise-view>.grip-guide,.exercise-view>.exercise-progress-detail{border:0;border-top:1.5px solid var(--border);background:0 0;border-radius:0;margin:22px 0 0;padding:20px 0 0}.exercise-view>.timer-launch{margin-top:20px}.exercise-view .grip-guide ul,.exercise-view .safety-note ul{line-height:1.55}.exercise-view>.safety-note{padding-left:0}.exercise-view>.safety-note h3{color:#95501d}@media (prefers-color-scheme:dark){.exercise-view>.safety-note h3{color:#f0a46a}}.exercise-view .numbers-grid{gap:14px 24px}.exercise-view .number-card{background:0 0;border:0;border-radius:0;padding:0}.exercise-view .number-card+.number-card{border-left:1.5px solid var(--border);padding-left:24px}@media (width<=460px){.exercise-view .number-card+.number-card{border-left:0;border-top:1.5px dashed var(--border);padding:14px 0 0}}.exercise-view .number-card.best small{color:var(--primary)}.exercise-view .number-card strong{font-size:18px}.exercise-view .exercise-more{border:0;border-top:1.5px solid var(--border);background:0 0;border-radius:0;margin-top:0;padding:0}.exercise-view>section+.exercise-more,.exercise-view>.exercise-progress-detail+.exercise-more{margin-top:22px}.exercise-view .exercise-more summary{padding:16px 0}.exercise-view .diagram-header,.diagram-sheet .diagram-header{display:none}.exercise-view .exercise-diagram{margin-top:6px}.exercise-view .exercise-diagram .diagram-stage{margin-top:0}.diagram-sheet .diagram-stage{border-top:1.5px solid var(--border)}.exercise-view>.method-row{margin:0 0 14px}.exercise-view .exercise-about .lead{margin:0 0 8px}.exercise-meta{color:var(--muted);margin:0;font-size:14px;font-weight:600}.exercise-view .exercise-about .target-areas{margin-top:12px}.exercise-meta .exercise-equipment{color:inherit;font:inherit;display:inline}.exercise-view .diagram-stage{top:0}.exercise-view .exercise-diagram{border-bottom:0}.exercise-view .diagram-legend{padding-bottom:0}@supports (animation-timeline:view()){@media (width<=860px) and (prefers-reduced-motion:no-preference){.hl-hero{view-timeline-name:--hl-hero}.hl-dots,.hl-hero-copy,.hl-hero-hold,.hl-scroll-cue{animation-timing-function:linear;animation-fill-mode:both;animation-timeline:--hl-hero;animation-range:exit-crossing}.hl-dots{animation-name:hl-dots-drift}.hl-hero-copy{animation-name:hl-copy-drift}.hl-hero-hold{animation-name:hl-hold-rise}.hl-scroll-cue{animation-name:hl-cue-fade;animation-range:exit-crossing exit-crossing 25%}.hl-step{animation:linear both hl-step-in;animation-timeline:view();animation-range:exit-crossing -100svh exit-crossing -62.5svh}.hl-admin{view-timeline-name:--hl-admin}.hl-marquee span{animation:linear both hl-marquee-slide;animation-timeline:--hl-admin;animation-range:exit-crossing -100svh}.hl-tile{--a:calc(60svh * var(--k) * .15 / 1.6);view-timeline-name:--hl-tile;animation:linear both hl-tile-in;animation-timeline:view();animation-range:exit-crossing calc(var(--a) - 100svh) exit-crossing calc(var(--a) - 100svh + 60svh / 1.6)}.hl-tile-hold{--a:calc(60svh * var(--k) * .15 / 1.6);animation:linear both hl-tile-hold-spin;animation-timeline:--hl-tile;animation-range:exit-crossing calc(var(--a) - 100svh) exit-crossing calc(var(--a) - 100svh + 60svh / 1.6)}.hl-chat,.hl-chat-body{overflow:clip}.hl-bubble{animation:linear both hl-bubble-in;animation-timeline:view();animation-range:exit-crossing -100svh exit-crossing -66.6667svh}.hl-final{view-timeline-name:--hl-final}.hl-fall{--a:calc(60svh * var(--k) * .08 / 1.5);animation:linear both hl-fall-in;animation-timeline:--hl-final;animation-range:exit-crossing calc(var(--a) - 100svh) exit-crossing calc(var(--a) - 100svh + 60svh / 1.5)}.hl-progress i,.hl-progress b,.hl-progress b:after{animation-timing-function:linear;animation-fill-mode:both;animation-timeline:scroll(root)}.hl-progress i{animation-name:hl-progress-fill}.hl-progress b{animation-name:hl-progress-climb}.hl-progress b:after{animation-name:hl-progress-show;animation-range:0% 2.5%}}}@keyframes hl-dots-drift{0%{transform:translateY(0)}to{transform:translateY(-120px)}}@keyframes hl-copy-drift{0%{transform:translateY(0)}to{transform:translateY(-80px)}}@keyframes hl-hold-rise{0%{transform:translate(-50%, -50%) translateY(0) rotate(var(--r))}to{transform:translate(-50%, -50%) translateY(calc(var(--depth) * -60 * var(--vh))) rotate(calc(var(--r) + var(--depth) * 200deg))}}@keyframes hl-cue-fade{0%{opacity:1}to{opacity:0}}@keyframes hl-step-in{0%{opacity:0;transform:translateY(50px) rotate(calc((var(--k) - 1) * 1.2deg - 5deg))}to{opacity:1;transform:translateY(0) rotate(calc((var(--k) - 1) * 1.2deg))}}@keyframes hl-marquee-slide{0%{transform:translate(0)}to{transform:translate(-45%)}}@keyframes hl-tile-in{0%{opacity:0;transform:translateY(70px)rotate(-6deg)scale(.9)}to{opacity:1;transform:translateY(0)rotate(0)scale(1)}}@keyframes hl-tile-hold-spin{0%{transform:rotate(0)}to{transform:rotate(80deg)}}@keyframes hl-bubble-in{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes hl-fall-in{0%{transform:translate(-50%, calc(-50% - 70 * var(--vh))) rotate(calc(var(--r) + 200deg))}to{transform:translate(-50%, -50%) rotate(var(--r))}}@keyframes hl-progress-fill{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes hl-progress-climb{0%{transform:translate(0)}to{transform:translate(100%)}}@keyframes hl-progress-show{0%{opacity:0}to{opacity:1}}html.native-tabs{--tab-safe:max(env(safe-area-inset-bottom,0px), var(--native-tab-inset,0px))}html.native-tabs .sidebar{display:none}html.native-tabs .main-shell{padding-bottom:var(--tab-safe);padding-left:var(--safe-left);padding-right:var(--safe-right);margin-left:0}html.native-tabs .main-shell.coach-mode{left:0}html.native-tabs .sticky-save{bottom:var(--tab-safe)}html.native-tabs .live-bar{bottom:calc(12px + var(--tab-safe))}html.native-tabs .coach-footer{background:0 0;border-top:0}.page-icon:has(.lucide-users-round){background:var(--teal)}.fr-avatar{border:2px solid var(--line);background:var(--hc,var(--violet));color:var(--ink);font-family:var(--font-display);box-shadow:var(--shadow-sm);border-radius:46% 54% 42% 58%/55% 45%;flex:none;place-items:center;font-weight:800;display:grid}.fr-avatar-photo{background:var(--surface);overflow:hidden}.fr-avatar-photo img{object-fit:cover;width:100%;height:100%}.fr-badge{border:2px solid var(--line);background:var(--coral);min-width:20px;height:20px;color:var(--ink);border-radius:999px;place-items:center;margin-left:2px;padding:0 6px;font-size:11px;font-weight:800;display:inline-grid}.fr-feed,.fr-stack{gap:var(--overview-gap);max-width:640px;display:grid}.fr-post{background:var(--surface);gap:12px;padding:16px;display:grid}.fr-post-head{align-items:center;gap:12px;display:flex}.fr-post-who{flex:1;min-width:0;display:grid}.fr-post-who .muted{flex-wrap:wrap;align-items:center;gap:3px;font-size:13px;display:flex}.fr-more{margin-left:auto}.fr-post-title{font-family:var(--font-display);align-items:center;gap:10px;margin:0;font-size:20px;display:flex}.fr-facets{gap:3px;display:inline-flex}.fr-facets i{border:2px solid var(--line);border-radius:6px;width:10px;height:22px}.fr-caption{margin:0;font-size:15px}.fr-stats{gap:22px;margin:0;display:flex}.fr-stats div{display:grid}.fr-stats dt{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:12px;font-weight:700}.fr-stats dd{font-family:var(--font-display);margin:0;font-size:18px;font-weight:700}.fr-pb{border:2px solid var(--line);background:var(--sun);color:var(--ink);border-radius:999px;justify-self:start;align-items:center;gap:8px;margin:0;padding:6px 12px;font-size:14px;font-weight:800;display:inline-flex}.fr-exercises{border:2px dashed var(--border);border-radius:16px;gap:6px;margin:0;padding:10px 12px;font-size:14px;list-style:none;display:grid}.fr-exercises li{align-items:center;gap:8px;display:flex}.fr-media{border:2px solid var(--line);aspect-ratio:4/5;background:var(--surface-2);border-radius:18px;position:relative;overflow:hidden}.fr-media img{object-fit:cover;width:100%;height:100%;display:block}.fr-video{--ratio:.8;aspect-ratio:var(--ratio);width:min(100%, calc(78vh * var(--ratio)));margin-inline:auto}.fr-count{border:2px solid var(--line);background:var(--surface);color:var(--text);border-radius:999px;align-items:center;gap:4px;padding:3px 9px;font-size:12px;font-weight:800;display:inline-flex;position:absolute;top:10px;right:10px}.fr-dots{gap:6px;display:flex;position:absolute;bottom:10px;left:50%;transform:translate(-50%)}.fr-dots i{border:1.5px solid var(--ink);background:#fff9;border-radius:50%;width:8px;height:8px}.fr-dots i.on{background:#fff;border-radius:6px;width:18px}.fr-post-foot{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.fr-allez{border:2px solid var(--line);background:var(--surface);min-height:44px;color:var(--text);font:inherit;box-shadow:var(--shadow-sm);cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:0 14px;font-weight:800;display:inline-flex}.fr-allez.given{background:var(--coral);color:var(--ink)}.fr-allez-names{flex-basis:100%;font-size:13px}.fr-person{border-top:2px dashed var(--border);align-items:center;gap:12px;padding:10px 0;display:flex}.fr-person:first-of-type{border-top:0}.fr-person-who{flex:1;min-width:0;display:grid}.fr-person-who .muted{font-size:13px}.fr-person-actions{align-items:center;gap:6px;display:flex}.button.fr-small{min-height:44px;padding:0 14px}.fr-add{gap:12px;display:grid}.fr-add p{margin:0}.fr-search-box{border:2px solid var(--line);background:var(--surface);border-radius:14px;align-items:center;gap:8px;padding:0 12px;display:flex}.fr-search-box input{background:0 0;outline:0;flex:1;box-shadow:none!important;border:0!important}.fr-compose,.fr-report{gap:14px;display:grid}.fr-compose-session{border:2px solid var(--line);background:var(--hero);border-radius:16px;align-items:center;gap:12px;padding:12px;display:flex}.fr-compose-session div{display:grid}.fr-picks{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.fr-picks img,.fr-pick-add{aspect-ratio:1;border:2px solid var(--line);object-fit:cover;border-radius:14px;width:100%}.fr-pick-add{background:var(--soft);color:var(--text);font:inherit;border-style:dashed;place-content:center;justify-items:center;gap:4px;font-size:12px;font-weight:800;display:grid}.fr-show,.fr-reasons{border:0;gap:10px;margin:0;padding:0;display:grid}.fr-show legend{margin-bottom:8px;font-weight:800}.fr-show label,.fr-reasons label,.fr-block-too{align-items:center;gap:10px;font-weight:600;display:flex}.fr-reasons label{border:2px solid var(--border);border-radius:14px;min-height:44px;padding:0 12px}.fr-reasons label:has(input:checked){border-color:var(--line);background:var(--soft)}.fr-private{background:var(--soft);border-radius:14px;gap:8px;margin:0;padding:10px 12px;font-size:13px;display:flex}.fr-private svg{flex:none;margin-top:2px}.fr-menu{gap:8px;display:grid}.fr-menu-item{border:2px solid var(--line);background:var(--surface);min-height:52px;color:var(--text);font:inherit;text-align:left;border-radius:16px;align-items:center;gap:12px;padding:0 14px;font-weight:700;display:flex}@media (width>=1100px){.fr-feed,.fr-stack{max-width:620px}}.fr-reasons input,.fr-show input,.fr-block-too input{height:20px;accent-color:var(--primary);flex:none;margin:0;padding:0;width:20px!important;min-height:0!important}.fr-aside{display:none}@media (width>=1100px){.fr-layout{grid-template-columns:minmax(0,600px) minmax(300px,380px);align-items:start;gap:28px;display:grid}.fr-aside{display:block;position:sticky;top:96px}}.fr-handle{color:var(--muted);font-size:13px;font-weight:600}.fr-aud{align-items:center;gap:3px;display:inline-flex}.fr-add-chip{border:2px solid var(--line);background:var(--soft);min-height:36px;color:var(--text);font:inherit;border-radius:999px;align-items:center;gap:4px;padding:0 12px;font-size:13px;font-weight:800;display:inline-flex}.fr-add-chip+.fr-more{margin-left:0}.fr-post-head .fr-add-chip{margin-left:auto}.fr-empty-actions{gap:10px}.fr-avatar-add{background:var(--surface);border-style:dashed}.fr-audience{border:0;grid-template-columns:1fr 1fr;gap:8px;margin:0;padding:0;display:grid}.fr-audience legend{margin-bottom:8px;font-weight:800}.fr-audience label{border:2px solid var(--border);cursor:pointer;border-radius:14px;align-items:center;gap:8px;padding:10px 12px;display:flex}.fr-audience label.on{border-color:var(--line);background:var(--soft);box-shadow:var(--shadow-sm)}.fr-audience input{opacity:0;width:1px;height:1px;position:absolute}.fr-audience label>span{display:grid}.fr-audience small{color:var(--muted);font-size:12px}.modal .fr-stack .panel{box-shadow:none}.o-calendar-button{justify-self:stretch;width:100%;margin-top:22px}.home-top{grid-template-areas:"next week""coming goals";align-items:start}.home-top .o-next{grid-area:next}.home-top .o-week{grid-area:week;align-self:stretch}.home-top .o-coming-wrap{grid-area:coming;display:grid}.home-top .o-coming{margin-bottom:0}.home-top .o-goals{grid-area:goals}@media (width<=1100px){.home-top{grid-template-areas:"next""coming""week""goals"}}@media (width<=760px){.overview-flow .o-coming-wrap{order:1;display:grid}}.fr-posted{border:2px dashed var(--border);background:var(--soft);text-align:left;border-radius:16px;align-items:center;gap:10px;margin-top:16px;padding:10px 12px;display:flex}.fr-posted-icon{border:2px solid var(--line);background:var(--lime);width:32px;height:32px;color:var(--ink);border-radius:50%;flex:none;place-items:center;display:grid}.fr-posted-text{flex:1;min-width:0;display:grid}.fr-posted-text small{color:var(--muted);font-size:12px}.fr-posted .button.fr-small{flex:none;min-height:40px;padding:0 12px;font-size:14px}.fr-posted{grid-template-columns:auto 1fr;row-gap:10px;display:grid}.fr-posted .button.fr-small{grid-column:1/-1;justify-content:center;width:100%}.fr-posted.compact{background:0 0;border:0;margin-top:14px;padding:0;display:flex}.fr-posted.compact .fr-posted-icon{width:26px;height:26px}.fr-posted.compact .fr-posted-text strong{font-size:15px}.fr-posted.compact .button.fr-small{width:auto;min-height:36px}.nav-badge{border:1.5px solid var(--line);background:var(--coral);min-width:20px;height:20px;color:var(--ink);border-radius:999px;place-items:center;margin-left:auto;padding:0 5px;font-size:11px;font-weight:800;line-height:1;display:inline-grid}@media (width<=760px){.nav-item{position:relative}.nav-badge{min-width:17px;height:17px;font-size:10px;position:absolute;top:2px;left:calc(50% + 6px)}}.fr-strip-photos{scroll-snap-type:x mandatory;scrollbar-width:none;width:100%;height:100%;display:flex;overflow-x:auto}.fr-strip-photos::-webkit-scrollbar{display:none}.fr-strip-photos img{scroll-snap-align:center;flex:0 0 100%}.fr-photo-nav{border:2px solid var(--line);background:var(--surface);width:36px;height:36px;color:var(--text);border-radius:50%;place-items:center;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.fr-photo-nav.prev{left:10px}.fr-photo-nav.next{right:10px}.fr-media video{object-fit:cover;background:var(--surface-2);width:100%;height:100%;display:block}.fr-video-poster{object-fit:cover;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.fr-video-sound{border:2px solid var(--ink);background:color-mix(in srgb, var(--ink) 55%, transparent);color:#fff;cursor:pointer;border-radius:50%;place-items:center;width:36px;height:36px;display:grid;position:absolute;bottom:14px;right:10px}.fr-video-progress{pointer-events:none;background:#ffffff4d;height:4px;position:absolute;bottom:0;left:0;right:0}.fr-video-progress span{background:var(--sun);height:100%;display:block}.fr-state{border:2px dashed var(--border);border-radius:12px;align-items:center;gap:8px;margin:0;padding:8px 12px;font-size:13px;display:flex}.fr-comments{border-top:2px solid var(--border);gap:10px;padding-top:10px;display:grid}.fr-comments>p{margin:0}.fr-comment{grid-template-columns:auto 1fr auto;align-items:start;gap:10px;display:grid}.fr-comment p{overflow-wrap:anywhere;margin:2px 0 0}.fr-comment .muted{font-size:12px}.fr-comment-form{align-items:center;gap:8px;display:flex}.fr-comment-form input{flex:1;min-width:0}.fr-pick{aspect-ratio:1;border:2px solid var(--line);background:var(--soft);border-radius:14px;place-items:center;display:grid;position:relative;overflow:hidden}.fr-pick img{border:0;border-radius:0;position:absolute;inset:0}.fr-pick.busy img{opacity:.5}.fr-pick small{text-align:center;padding:4px;font-size:11px;font-weight:800;position:relative}.fr-pick-remove{border:2px solid var(--line);background:var(--surface);width:28px;height:28px;color:var(--text);border-radius:50%;place-items:center;display:grid;position:absolute;top:6px;right:6px}.fr-pick-play{border:2px solid var(--ink);background:var(--sun);width:38px;height:38px;color:var(--ink);border-radius:50%;place-items:center;display:grid;position:relative}.fr-sub{color:var(--muted);margin:14px 0 4px;font-size:14px}.fr-person-more{margin:0 0 8px 56px}.fr-username,.fr-empty,.fr-invite{justify-items:start;gap:12px;display:grid}.fr-invite{text-align:center;justify-items:center}.fr-invite .form-footer{width:100%}.fr-username form{gap:8px;width:100%;max-width:420px;display:grid}.fr-search-box>span[aria-hidden]{color:var(--muted);font-weight:800}.fr-intro{flex-wrap:wrap;align-items:center;gap:8px 12px;margin-bottom:16px;display:flex}.fr-intro>span:first-of-type{flex:260px}.fr-session-post{flex-wrap:wrap;align-items:center;gap:8px 12px;margin:12px 0;display:flex}.fr-settings{gap:14px;display:grid}.fr-check{align-items:center;gap:10px;font-weight:700;display:flex}.fr-check input{height:20px;accent-color:var(--primary);flex:none;margin:0;width:20px!important;min-height:0!important}.fr-add-chip.done{color:var(--muted);background:0 0}.fr-menu-item.danger{color:var(--chart-now)}.fr-feed>.button.secondary{justify-self:center}.admin-reports{gap:18px;display:grid}.admin-report{border-top:2px solid var(--border);gap:8px;padding:12px 0;display:grid}.admin-report p,.admin-report blockquote{margin:0}.admin-report blockquote{border-left:3px solid var(--border);padding-left:10px}.admin-media{flex-wrap:wrap;gap:8px;display:flex}.admin-media img,.admin-media video{border:2px solid var(--line);object-fit:cover;border-radius:12px;width:120px;height:120px}.fr-views{white-space:nowrap;align-items:center;gap:4px;margin-left:auto;font-size:13px;display:inline-flex}.fr-picture{align-items:center;gap:14px;display:flex}.fr-picture-compact{margin-bottom:14px}.fr-picture-face{cursor:pointer;background:0 0;border:0;padding:0;position:relative}.fr-picture-camera{border:2px solid var(--line);background:var(--surface);width:24px;height:24px;color:var(--text);border-radius:50%;place-items:center;display:grid;position:absolute;bottom:-4px;right:-4px}.fr-picture-text{gap:4px;min-width:0;display:grid}.fr-picture-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:2px;display:flex}.fr-crop{gap:14px;display:grid}.fr-crop-stage{aspect-ratio:1;border:2px solid var(--line);background:var(--ink);touch-action:none;cursor:grab;-webkit-user-select:none;user-select:none;border-radius:18px;width:min(300px,100%);margin:0 auto;position:relative;overflow:hidden}.fr-crop-stage:active{cursor:grabbing}.fr-crop-stage:focus-visible{outline:3px solid var(--violet);outline-offset:3px}.fr-crop-photo{pointer-events:none;max-width:none;position:absolute;top:50%;left:50%}.fr-crop-mask{outline-offset:-2px;pointer-events:none;border-radius:46% 54% 42% 58%/55% 45%;outline:2px solid #ffffffd9;position:absolute;inset:0;box-shadow:0 0 0 999px #00000080}.fr-crop-wait{color:#fff;place-items:center;display:grid;position:absolute;inset:0}.fr-crop-zoom{align-items:center;gap:10px;width:min(300px,100%);margin:0 auto;display:flex}.fr-crop-zoom input{accent-color:var(--violet);flex:1}.fr-crop-hint{text-align:center;margin:0}.fr-crop-actions{justify-content:flex-end;gap:10px;display:flex}.fr-video-wait{pointer-events:none;background:#1d1a2f73;border:4px solid #ffffff59;border-top-color:#fff;border-radius:50%;width:44px;height:44px;margin:-22px 0 0 -22px;animation:.9s linear infinite spin;position:absolute;inset:50% auto auto 50%;box-shadow:0 0 0 6px #1d1a2f73}@media (prefers-reduced-motion:reduce){.fr-video-wait{animation-duration:2.4s}}.settings-layout{gap:18px;display:grid}.settings-hub{align-content:start;gap:12px;display:grid}.settings-group{gap:8px;display:grid}.settings-group-label{font-family:var(--font-display);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:10px 4px 0;font-size:12px;font-weight:700}.settings-badge{border:2px solid var(--line);background:var(--tone,var(--sun));width:34px;height:34px;color:var(--ink);border-radius:11px;flex:none;place-items:center;display:inline-grid}.settings-list{margin:0;padding:6px;display:grid;overflow:hidden}.settings-row{width:100%;min-height:64px;color:var(--text);font:inherit;text-align:left;cursor:pointer;box-shadow:none;background:0 0;border:0;border-radius:16px;align-items:center;gap:12px;padding:10px 12px;display:flex}.settings-row+.settings-row{position:relative}.settings-row+.settings-row:before{content:"";border-top:1.5px solid var(--border);position:absolute;top:0;left:58px;right:12px}.settings-row:hover{background:var(--surface-2)}.settings-row[aria-current=page]{background:var(--soft)}.settings-row[aria-current=page]:before,.settings-row[aria-current=page]+.settings-row:before{border-color:#0000}.settings-row-text{flex:1;gap:2px;min-width:0;display:grid}.settings-row-text strong{font-size:16px}.settings-row-text small{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.settings-chevron{color:var(--muted);flex:none}.settings-row[aria-current=page] .settings-chevron{color:var(--primary)}.settings-signout .settings-badge{background:var(--surface-2)}.settings-profile{background:var(--hero);flex-wrap:wrap;align-items:center;gap:14px 16px;margin:0;padding:18px;display:flex}.settings-face{box-shadow:none;cursor:pointer;background:0 0;border:0;border-radius:50%;flex:none;padding:0;display:inline-flex;position:relative}.settings-face .fr-avatar{border:2px solid var(--line)}.settings-face .fr-picture-camera{position:absolute;bottom:-2px;right:-2px}.settings-who{flex:1;gap:4px;min-width:140px;display:grid}.settings-who strong{font-family:var(--font-display);text-overflow:ellipsis;font-size:19px;overflow:hidden}.settings-chips{flex-wrap:wrap;gap:6px;margin-top:4px;display:flex}.settings-chips .tag{background:var(--surface)}.settings-profile-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.settings-detail{align-content:start;gap:16px;min-width:0;display:grid}.settings-page-wrap{gap:16px;display:grid}.settings-page{margin:0}.settings-page-title{font-family:var(--font-display);align-items:center;gap:10px;margin:0 0 16px;font-size:19px;display:flex}.settings-page .flat-panel>:first-child{margin-top:0}.sticky-save{border:2px solid var(--line);background:var(--surface);box-shadow:var(--shadow-sm);border-radius:20px;justify-content:space-between;align-items:center;gap:12px;margin-top:0;padding:10px 10px 10px 18px;display:flex}.sticky-save>.sticky-save-status{max-width:none;color:var(--muted);font-size:14px;font-weight:600}.sticky-save>.button{flex:none;min-height:44px}.fr-username-row{align-items:stretch;gap:8px;display:flex}.fr-username-row .fr-search-box{flex:1;min-width:0;min-height:48px}.fr-username-row>.button{flex:none;min-height:48px;padding:0 18px}@media (width<=760px){.settings-profile-actions{flex-basis:100%}.settings-profile-actions .button{justify-content:center;width:100%}.sticky-save{padding:8px 8px 8px 14px}.sticky-save>.sticky-save-status{font-size:13px}}@media (width>=900px){.settings-layout{grid-template-columns:minmax(300px,380px) minmax(0,1fr);align-items:start;gap:28px}}@media (width>=761px){.sticky-save{bottom:16px}}html.native-app,html.native-app *{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}html.native-app :is(input,textarea,[contenteditable]:not([contenteditable=false])),html.native-app [contenteditable]:not([contenteditable=false]) *{-webkit-user-select:text;user-select:text;-webkit-touch-callout:default}.fh-head{align-items:center;gap:10px;margin:-6px 0 12px;display:flex;position:relative}.fh-head h1{font-family:var(--font-display);margin:0;font-size:30px;line-height:1}.fh-scope{border:2px solid var(--line);background:var(--sun);min-height:36px;color:var(--ink);font:inherit;box-shadow:var(--shadow-sm);cursor:pointer;border-radius:999px;align-items:center;gap:5px;padding:0 10px 0 11px;font-size:14px;font-weight:800;display:inline-flex}.fh-actions{gap:8px;margin-left:auto;display:flex}.fh-round,.fp-round{border:2px solid var(--line);background:var(--surface);width:44px;height:44px;color:var(--text);box-shadow:var(--shadow-sm);cursor:pointer;border-radius:50%;flex:none;place-items:center;display:grid;position:relative}.fh-new{background:var(--violet);color:var(--ink)}.fh-dot{border:1.5px solid var(--line);background:var(--coral);min-width:19px;height:19px;color:var(--ink);border-radius:999px;place-items:center;padding:0 4px;font-size:11px;font-weight:800;display:grid;position:absolute;top:-5px;right:-5px}.fh-scrim{z-index:40;background:color-mix(in srgb, var(--ink) 25%, transparent);position:fixed;inset:0}.fh-menu{z-index:41;border:2px solid var(--line);background:var(--surface);width:min(290px,100%);box-shadow:var(--shadow);border-radius:18px;padding:6px;display:grid;position:absolute;top:calc(100% + 8px);left:0}.fh-menu button{min-height:56px;color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:12px;align-items:center;gap:12px;padding:0 10px;display:flex}.fh-menu button.on{background:var(--soft)}.fh-menu-icon{border:2px solid var(--line);background:var(--surface);border-radius:50%;flex:none;place-items:center;width:34px;height:34px;display:grid}.fh-menu button.on .fh-menu-icon{background:var(--sun);color:var(--ink)}.fh-menu-text{flex:1;display:grid}.fh-menu-text small{color:var(--muted);font-size:12.5px}.fr-edge .fr-feed{gap:14px}.fr-edge .fr-post{box-shadow:3px 3px 0 var(--edge);border-radius:16px;gap:10px;padding:12px 12px 10px}.fr-edge .fr-post>.fr-media{border-inline:0;border-radius:0;margin-inline:-12px}.fr-edge .fr-post>.fr-video{width:calc(100% + 24px)}.fr-edge .fr-post-title{font-size:18px}.fr-edge .fr-post-head .fr-avatar{width:38px!important;height:38px!important}.fr-edge .fr-post-who .muted{white-space:nowrap;flex-wrap:nowrap;font-size:12.5px;line-height:1.3;overflow:hidden}.fr-edge .fr-post-who .fr-aud{font-size:0}.fr-edge .fr-post-who .fr-aud svg{margin-left:6px}.fr-edge .fr-stats dd{font-size:17px}.fr-edge .fr-pb{padding:4px 10px;font-size:13px}.fr-edge .fr-allez{min-height:40px;box-shadow:none;padding:0 12px}@media (width<=760px){.fr-edge .fr-feed{gap:0;margin-inline:-19px}.fr-edge .fr-post{border:0;border-top:2px solid var(--line);box-shadow:none;background:0 0;border-radius:0;padding:14px 0 12px}.fr-edge .fr-post>*{margin-inline:14px}.fr-edge .fr-post>.fr-media{margin-inline:0}.fr-edge .fr-post>.fr-video{width:100%}.fr-edge .fr-feed>:not(.fr-post){margin-inline:19px}.fr-edge .fr-feed>:not(.fr-post)+.fr-post{margin-top:14px}}.fp-page,.fp-body{gap:12px;max-width:620px;display:grid}.fp-title{font-family:var(--font-display);margin:0 0 4px;font-size:30px}.fp-invite{border:2px solid var(--line);background:var(--soft);box-shadow:var(--shadow);border-radius:22px;gap:8px;padding:18px;display:grid}.fp-invite h2{font-family:var(--font-display);margin:4px 0 0;font-size:20px}.fp-invite p{color:var(--muted);margin:0;font-size:14px}.fp-invite-faces{display:flex}.fp-invite-faces .fr-avatar+.fr-avatar{margin-left:-10px}.fp-invite-plus{background:var(--sun)}.fp-invite-actions{gap:10px;margin-top:6px;display:flex}.fp-invite-actions .button{flex:1;justify-content:center}.fp-invite-actions .fp-round{width:50px;height:50px}.fp-search{border:2px solid var(--line);background:var(--surface);min-height:52px;color:var(--muted);border-radius:16px;align-items:center;gap:10px;margin-top:6px;padding:0 6px 0 14px;display:flex}.fp-search input{background:0 0;outline:0;flex:1;min-width:0;font-size:16px;min-height:48px!important;box-shadow:none!important;border:0!important;padding:0!important}.fp-clear{width:40px;height:40px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:50%;flex:none;place-items:center;display:grid}.fp-label{color:var(--muted);font-family:var(--font-body);letter-spacing:.05em;text-transform:uppercase;align-items:center;gap:8px;margin:12px 4px 0;font-size:13px;font-weight:800;display:flex}.fp-count{border:1.5px solid var(--line);background:var(--sun);color:var(--ink);letter-spacing:0;border-radius:999px;padding:1px 8px;font-size:11px}.fp-list{border:2px solid var(--line);background:var(--surface);border-radius:18px;display:grid;overflow:hidden}.fp-list>*+*{border-top:1.5px solid var(--border)}.fp-row{align-items:center;gap:12px;min-height:66px;padding:8px 10px 8px 14px;display:flex}.fp-row-who{flex:1;min-width:0;display:grid}.fp-row-who strong,.fp-row-who small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.fp-row-who small{color:var(--muted);font-size:13px}.button.fp-small{min-height:40px;padding:0 14px;font-size:14px}.fp-icon{width:44px;height:44px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:50%;flex:none;place-items:center;display:grid}.fp-state{color:var(--muted);align-items:center;gap:4px;font-size:14px;font-weight:700;display:inline-flex}.fp-cancel{padding-inline:8px;font-size:14px}.fp-more{flex-wrap:wrap;gap:8px;padding:0 14px 12px 72px;display:flex}.fp-none{color:var(--muted);margin:0;padding:16px 14px;font-size:14px}.fp-you{padding:14px}.fr-aside .fp-body{gap:10px}.fr-aside .fp-invite h2{font-size:18px}@media (width>=1100px){.fh-head{max-width:1008px}}.main-shell.feed-mode>.topbar{position:relative}.fr-video .fr-video-expand{top:10px;bottom:auto}.fr-video .fr-count{left:10px;right:auto}.fr-full{background:#000;border:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0}.fr-full::backdrop{background:#000}.fr-full video{object-fit:contain;background:#000;width:100%;height:100%;display:block}.fr-full .fr-full-close{top:calc(var(--safe-top) + 12px);right:calc(var(--safe-right,0px) + 12px);width:44px;height:44px;bottom:auto}.fr-full .fr-full-sound{right:calc(var(--safe-right,0px) + 12px);bottom:calc(var(--safe-bottom,0px) + 20px);width:44px;height:44px}.fr-full .fr-full-progress{bottom:var(--safe-bottom,0px)}html.fr-full-open{overflow:hidden}.fr-mention{color:var(--primary);font-weight:700}button.fr-allez-who{font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0;font-size:13px}button.fr-allez-who svg{vertical-align:-2px}button.fr-allez-who:hover{color:var(--text);text-decoration:underline}.fr-allez-list{display:grid}.fr-allez-list>p{margin:0}.fr-allez-list .fp-row{min-height:58px;padding:6px 0}.fr-allez-list .fp-row+.fp-row{border-top:1.5px solid var(--border)}.fr-mention-wrap{flex:1;min-width:0;display:grid;position:relative}.fr-mention-list{z-index:30;border:2px solid var(--line);background:var(--surface);width:min(300px,100%);box-shadow:var(--shadow);border-radius:16px;margin:0;padding:6px;list-style:none;display:grid;position:absolute;bottom:calc(100% + 6px);left:0}.fr-field .fr-mention-list,label .fr-mention-list{top:calc(100% + 6px);bottom:auto}.fr-mention-list li{cursor:pointer;border-radius:10px;align-items:center;gap:10px;min-height:46px;padding:4px 8px;display:flex}.fr-mention-list li.on,.fr-mention-list li:hover{background:var(--soft)}.fr-mention-list li span{min-width:0;display:grid}.fr-mention-list small{color:var(--muted);font-size:12.5px}.change-new{--change:var(--lime)}.change-moved{--change:var(--sky)}.change-changed{--change:var(--violet)}.change-removed{--change:var(--coral)}.change-settings{--change:var(--sun)}.change-pills{flex-wrap:wrap;gap:8px;margin:0 0 14px;display:flex}.change-pill{border:1.5px solid var(--line);background:var(--change);color:var(--ink);border-radius:999px;align-items:center;gap:5px;padding:4px 10px 4px 8px;font-size:13px;font-weight:800;display:inline-flex}.change-list{gap:10px;display:grid}.change-row{border:2px solid var(--line);background:var(--surface);border-radius:16px;overflow:hidden}.change-head{width:100%;min-height:60px;color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:12px;padding:10px 14px 10px 12px;display:flex}.change-head:disabled{cursor:default;opacity:1}.change-icon{border:1.5px solid var(--line);background:var(--change);width:30px;height:30px;color:var(--ink);border-radius:46% 54% 42% 58%/55% 45%;flex:none;place-items:center;display:grid}.change-text{flex:1;gap:2px;min-width:0;display:grid}.change-title{overflow-wrap:anywhere;font-size:15px;font-weight:800;line-height:1.25}.change-removed .change-title{color:var(--muted);text-decoration:line-through}.change-sub{color:var(--muted);font-size:13px}.change-chevron{color:var(--muted);flex:none;transition:transform .15s}.change-row.open .change-chevron{transform:rotate(180deg)}.change-details{border-top:1.5px dashed var(--border);gap:6px;margin:0 14px 12px 54px;padding-top:8px;font-size:14px;display:grid}.change-details .deload-line{margin:0}.change-steps{gap:2px;display:grid}.change-step{justify-content:space-between;gap:10px;padding:4px 0;display:flex}.change-step-line{max-width:55%;color:var(--muted);text-align:right;flex:none;font-size:13px}.change-edit{justify-self:start;align-items:center;gap:6px;min-height:36px;display:inline-flex}.change-note{text-align:center;margin:14px 0 0;font-size:13px}@media (width<=380px){.change-details{margin-left:14px}}.coach-page .chat-message.has-review{overflow:hidden}.coach-page .chat-review{border:0;border-top:2px dashed var(--border);background:var(--soft);width:calc(100% + 32px);color:var(--green);font:inherit;text-align:left;cursor:pointer;border-radius:0;align-items:center;gap:8px;margin:12px -16px -14px;padding:12px 16px;font-size:15px;font-weight:800;display:flex}.coach-page .chat-review span{flex:1}.coach-page .chat-review.alone{border:2px solid var(--line);width:100%;box-shadow:var(--shadow-sm);border-radius:16px;margin:12px 0}
