@font-face{font-family:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/archivo-vietnamese-wght-normal-XAtsl5Q_.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:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/archivo-latin-ext-wght-normal-C4zznr8T.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:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/archivo-latin-wght-normal-E0tuGl4L.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:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(data:font/woff2;base64,d09GMgABAAAAAAn4ABMAAAAAEwQAAAmOAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGjQbgnQcLj9IVkFSgQEGYD9TVEFUgQIAgQovahEICok0h0ULIAAwhzoBNgIkAzwEIAWHJgeBDgwHG6QQUdRKTmoBFD8K42bniObKrG3LZFcMWZzFmrjTFhQ6TVTqPJcInrfrvzq3b2PGn1wwMiNYGTy9ViREYARlL1zAGcPdPqBt3gNWrfKthv4xnM+b9caw+wmjgEUVRjHXhS6jgCK6zf5HiWQacJpGdAgdrbV6g/Rf1BfxRqZVQnrxRVWSJb6RLFnyu0elilmjeoSQCKnxsmwLaddUMjnksriSYuuPl06EAl7KfAiWQjCUETz0zNZ3EII94CDQtzkMfZ/9IkkY8tZRZTDky5ZVwBAM+GYpdd4ZVAWYImnLkiTg48l79gGx3D+VBtLeyg8u7bJAd4uo0pFuQBFysE9C95l0W4Fkiao6GfrDbu77lVU7wk9cV3uqOsXmQiMkhVKl1ugjzUAJBSIkkVWHijkpkVSyUFsgVBuJMA0N+ZnXtyUv5yMigGdfQRmwL1AAjQ3YXG6iIFNSUdPQo8+AISPGAltBMDQRAtyf4ZspLlZkpyOVoMZPvFGWzvk8p5SUC/NWPMj6T2/Yas2EdlON5GkfdkeFwVGjta825H89NIenlLWAPAp5h1KDtRhCaAQWMsFKtEvOKpIhgLHlXPARokkgEGEOAkqxJRQpKYq4ezahIiLHP6hZpqMbV0pUF2vdvEimLEQ/iIUYLgYWs0VXGVlLTOPdaPmFfCC/XrtzqVo1ez7vz6+Kd2+7o11ZJ+4MreLbB5BKVGxobAq4jZYalZ5aX2CKJiwUuc9GNJyi4M8bGyKcdjSRrG4JohdF8buJfmQefbYYREnMFsOoiNliFDVxmRgL0XUmUMLqzW0A4gCQAhWGYCQpFNukwXhIkPMsbRI19ewtw8Cp2Wj/Ro5cM2OTAbJAvZ/L4opBXb9+UHscYuOKM/W8isgwN26Exexjizmfnlp9dE3hOSqdZ/F5QqbckIlPb+oKfXxd6hftJ7Sm/uyPYpONza84CRlMNk/uhOrLpyf53982++zRkXNu3g3VF8qFbx1+7fbHZ9DrB3VXWNSmhnT2vrwS1+1Z+kHGBaZIhnnvuLBTNDeA340D1DWu5/jEa9pVfl6+Jij+yo3EELNixXCLjr173Q5eDP7Y7/L4iQFHbjpaJLFoP4cCsYP6sAPL7gMHNg53yYjqxqTDrYqLDl5DzW/eTLjYxCvucprjI3yl2ykKowKUC2Ox2FJLFo6Fa1HBWLC2jMCIIBEmklkYhmkpmBhTm/LCvJAH5oGcMKcgFEP1xUdho8ANPa6RFD99/PN60fjj9eXy2Eex4B5MpmRapXidzFk1p4uLk3+hn6jAP9ovJcXPPwk8o/0ltizbdbnTprvx4PSxT0VZ3Xc772aN7RflgbXRYwc3hLNO+k878nxGwfuVM8m8Gs7WEoVGWLHwSpx4vNSHBCMNqJ4m15Kp/TfHHVkQd++eY7PGN4W5byTs+6Ft8Ozvb/D60btv37de8ER0mS3P/0sLW84qGjEVkwztPzz06eGUWwKLwPb0D/WFd3vltl2aP276KpM0JNz6AfnAnZ5ADlF2zVyZ2OkxHSMxWPMnSZLbbDR3F1UjPVqp4d68da13F1YZujdWw7271iecO2l9+/4p47Oztjck355/75wFOI+VdGDqbNGs+ISgxg3iB2jb2r+b0CWsNLHIM4sdv8SDSFBP/Oromz6FNCWw2iMTxV0R8QLyBTkpe0j5+pSSJOOTB5Mck/gh3IopuNQnhKj02t3FL80gGbEh89SZcwTxcYt5cZT/nMnB3uXfPy8BSpVMBuRx+ZhACGzDBmwHsJRAjhotOnzuj2wDz3ug2wOUAY2NgZln9/TK/enG/oE4rO1wxvGUFMAxsZ0qNjRC7hl9d17e7imbgDt6uJXhUobDg7v3RX/yRCKxgMhfyiKcZfbpk0wmCcdQlIAOHeakXLvCNt++WfKiozNqSZxxJotn+c0a7DdPsx7DPYgKIDxwwYUZDg9aJbxocTjcwovr9WAsVV32mQoiiIOCHc60Oltst9qCQYuCqN1yHo0Kj60OgI2OqmiuBUWrNA0NDhYCDcdpmMrs1fZZ0xdTzMr1HdPtIHstYhqaPDDA5YxUDx7J4fJiisBSDI/L6G/bn34GNy8Q2g044ZTulAdFLb0tI6NNxfj3DzLjWiNGxje1pz7aXOcNV68lDPEd2SXl6VfBuwmHzdf1gxFy1HvA7pD8I2BnnmyGw852Cg5XbgIdEEGE5UCzen5jTlG6JCU5iajlxVcsXvbcS0SAcg1dcesWJLVK8+hYHOYQ+Pjy+EyVGXP0aPTFagrV9E03hCQvYx+g47KGq+1GsLj8uBIyihNw33YUe8PNC4BOJ3Lm1AglLV3nCuvUdIP+v15tVGbWIwgxLVpPkfpthCGpTKG+oA/DQfsKKvxhScqaN6FuElAUtTKv2UYgOmQegsN/n7njHUju8wM4VTcm+Q8xfX9SFwjTzdVqu95UOWSIGOabH8OGBEba//8Yxl3GcPdP/dMBOoSX/0z5SZmBoLbaPs+9asaMpb36yknKaw6FqWZa6A5vDa02mhkOba1q6KtLV208xrkwmW5C4VD6n2fvRjADy2qDYYnNy+H10Fq0LMbNzS863gkO7iQ8eC48/Ny5m59tOcEso3u7Qg3yrqDL6eKXwJAuWnhylfbWrRObe66rzX59+XDtzusnL66dI/86ArmtLlzED860Ef3bFPV78OX/zFTA11fcBn2Vntb7qiGBSgLBHyuv/uEaqqoTgSpOyjlzh86me1Vriv7i9rLPLvtghWmSnblRbAsBJL/4dScSQTBxOivHMO5QvBBY0iheJvfwWLxLOGzYKZyM4zVc2Cll46zEpeUV4MqGEWZj22SdOxhGAjgs9AEnfT+RoiMfcDb0GS5NncKVxju4Nt/mRk13O9Gz3FLct5oCD6wkwUNrCfHIUg6SMf8LwQGyVaBUqpLPW5BaMpRshEpl8nS1qw5dgnzlik8QBXmdy5UrIH74heTKZKMSilQso4hsRiGraQZRzxpNGqlEJMsXuAU7GlcR8mWSykUpVkWGyIf0a8v4qEQp5CtGsMiZa+4ESYQy+WilCiguHzxMXO54ogShooTV2bj2z1zL6DYSoImoQ8lFUWxMLBNQQgLkV2tHYgUoIbkuREz+fJHKxxWBcnvu3KQppFCxLkguB1NyVSp/TknRvNwYlCdbblWu3ze6owHdWluhE5tgQ6ej2SV65CijijoaRfSiH4Nqz1OpfEW+WeI/oU0ly60zkV9YzOQSYtZVEGYmrysTZAJkY4qZtIBD9/LYTIK7Nww3vMiYBwA=)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:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-cyrillic-wght-normal-Dvxsihut.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-greek-wght-normal-DL7QRZyv.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-vietnamese-wght-normal-usUDDRr7.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:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-latin-ext-wght-normal-Ch3YOpNY.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:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-latin-wght-normal-DHIcAJRg.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{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--canvas:#111213;--surface-1:#1a1c1e;--surface-2:#212427;--surface-3:#282c30;--hairline:#26292d;--hairline-strong:#34383d;--ink:#f4f1ea;--ink-muted:#c9c5bb;--ink-subtle:#8b8e96;--accent:#d9463a;--accent-soft:color-mix(in srgb, var(--accent) 18%, transparent);--success:#4f9d69;--warning:#d4a72c;--danger:#c0392b;--accent-text:color-mix(in srgb, var(--accent) 72%, white);--accent-hud:color-mix(in srgb, var(--accent) 85%, white);--danger-text:color-mix(in srgb, var(--danger) 62%, white);--success-text:color-mix(in srgb, var(--success) 62%, white);--warning-text:color-mix(in srgb, var(--warning) 88%, white);--t-display:32px;--t-title:24px;--t-card-title:17px;--t-body:15px;--t-body-sm:13.5px;--t-caption:12px;--t-label:11.5px;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}@supports (color:oklch(from red l c h)){:root{--accent-text:oklch(from var(--accent) max(l, .72) c h);--accent-hud:oklch(from var(--accent) max(l, .58) c h)}}*{box-sizing:border-box}html,body{overflow-x:clip}body{background:var(--canvas);color:var(--ink);padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);-webkit-text-size-adjust:100%;margin:0}main{max-width:480px;margin:0 auto;padding:1.5rem 1rem}.center{text-align:center;padding:3rem 1rem}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}a,button,[role=button],.switch-row{-webkit-tap-highlight-color:transparent;touch-action:manipulation}a,button,[role=button]{-webkit-touch-callout:none}.stage,.stage-overlay,.stage-hud,.workshop-hud,.camcheck{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.stage input,.stage textarea,.stage-overlay input,.stage-overlay textarea{-webkit-user-select:text;user-select:text}input,textarea,select{font:inherit;font-size:var(--t-body);border:1px solid var(--hairline-strong);background:var(--surface-1);color:var(--ink);border-radius:8px;padding:10px 12px;transition:border-color .15s ease-out}textarea{width:100%}input::placeholder,textarea::placeholder{color:var(--ink-subtle)}input:focus,textarea:focus,select:focus{border-color:var(--accent)}button{font:inherit;background:var(--accent);color:var(--on-accent,#fff);border:none;border-radius:8px;padding:10px 16px;font-size:14px;font-weight:600}a{color:var(--accent-text)}.muted{color:var(--ink-subtle);font-size:var(--t-body-sm)}.row-inline{flex-wrap:wrap;align-items:center;gap:.5rem;margin:.5rem 0;display:flex}.btn-ghost{font:inherit;min-height:36px;color:var(--ink-muted);cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;gap:.4rem;padding:8px 12px;font-size:14px;font-weight:600;text-decoration:none;transition:background-color .15s ease-out,color .15s ease-out;display:inline-flex}.btn-ghost:disabled{opacity:.6;cursor:default}@media (hover:hover){.btn-ghost:hover{background:var(--surface-1);color:var(--ink)}.stage-card .btn-ghost:hover,.empty-state .btn-ghost:hover{background:var(--surface-2)}}.dot{background:var(--accent);border-radius:50%;width:.5rem;height:.5rem;margin-left:.5rem;display:inline-block}.feedback{border-left:3px solid var(--hairline-strong);background:var(--surface-1);margin:.5rem 0;padding:.75rem 1rem}.stills-strip{gap:12px;padding:4px 0 8px;display:flex;overflow-x:auto}.stills-strip figure{flex:none;width:7.5rem;margin:0}.stills-strip img{aspect-ratio:3/4;object-fit:cover;background:#000;border-radius:16px;width:100%}.stills-strip figcaption{font-size:var(--t-caption);color:var(--ink-subtle);white-space:nowrap;text-overflow:ellipsis;margin-top:6px;overflow:hidden}.still-btn{background:0 0;border:0;width:100%;padding:0;display:block}.swatches{flex-wrap:wrap;gap:.6rem;margin:1rem 0;display:flex}.swatch{cursor:pointer;border:2px solid #0000;border-radius:50%;width:2.6rem;height:2.6rem;padding:0}.swatch.active{border-color:var(--ink)}.swatch.custom{border:2px dashed var(--hairline-strong);place-items:center;display:grid}.swatch.custom input{opacity:0;cursor:pointer;width:100%;height:100%}.brand-preview{background:var(--surface-1);border:1px solid var(--hairline);border-radius:12px;flex-direction:column;align-items:flex-start;gap:.75rem;padding:16px 20px;display:flex}.brand-preview .btn-primary{margin-top:0}.stage{background:var(--canvas);max-width:none;padding:0;position:fixed;inset:0}.stage-cam{object-fit:cover;width:100%;height:100%;transform:scaleX(-1)}.stage-overlay{background:radial-gradient(120% 100% at 50% 8%, color-mix(in srgb, var(--canvas) 55%, transparent), color-mix(in srgb, var(--canvas) 88%, transparent));padding:calc(24px + env(safe-area-inset-top)) 16px calc(24px + env(safe-area-inset-bottom));justify-content:center;align-items:safe center;display:flex;position:absolute;inset:0;overflow-y:auto}.stage-card{background:var(--surface-1);border:1px solid var(--hairline);text-align:left;border-radius:16px;flex-direction:column;width:100%;max-width:420px;padding:28px 24px 24px;display:flex}.stage-eyebrow{font-size:var(--t-label);letter-spacing:.06em;text-transform:uppercase;color:var(--accent-text);margin:0;font-weight:600}.stage-title{font-size:var(--t-title);letter-spacing:-.015em;color:var(--ink);text-wrap:balance;margin:.3rem 0 0;font-weight:650}.stage-sub{font-size:var(--t-body-sm);color:var(--ink-subtle);margin:.5rem 0 1.25rem;line-height:1.5}.stage-card-status{text-align:left;align-items:flex-start}.stage-card-status .stage-sub{margin-bottom:.25rem}.stage-eyebrow-danger{color:var(--danger,var(--accent))}.stage-spinner{border:2.5px solid var(--hairline-strong);border-top-color:var(--accent);border-radius:50%;width:22px;height:22px;margin-bottom:.75rem;animation:.8s linear infinite stage-spin}@keyframes stage-spin{to{transform:rotate(360deg)}}.call-sheet-head{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.call-sheet-label{font-size:var(--t-label);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-subtle);font-weight:600}.call-sheet-count{font-size:var(--t-label);color:var(--ink-muted);background:var(--surface-3);font-variant-numeric:tabular-nums;border-radius:9999px;padding:2px 9px;font-weight:700}.call-sheet-wrap{margin:0 0 1.5rem;position:relative}.call-sheet{border:1px solid var(--hairline);border-radius:12px;flex-direction:column;max-height:220px;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.call-sheet-wrap:after{content:"";pointer-events:none;background:linear-gradient(transparent, var(--surface-1));border-radius:0 0 11px 11px;height:34px;position:absolute;bottom:1px;left:1px;right:1px}.call-sheet-wrap[data-full=true]:after{display:none}.call-sheet-item{border-bottom:1px solid var(--hairline);align-items:center;gap:10px;padding:8px 12px;display:flex}.call-sheet-item:last-child{border-bottom:none}.call-sheet-num{background:var(--surface-3);width:20px;height:20px;color:var(--ink-muted);font-size:var(--t-label);font-variant-numeric:tabular-nums;border-radius:6px;flex:none;place-items:center;font-weight:700;display:grid}.call-sheet-name{min-width:0;font-size:var(--t-body-sm);color:var(--ink-muted);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.call-sheet-hold{font-size:var(--t-caption);color:var(--ink-subtle);font-variant-numeric:tabular-nums;flex:none}.stage-toggles{flex-direction:column;gap:4px;margin-bottom:1.25rem;display:flex}.switch-row{cursor:pointer;text-align:left;width:100%;font:inherit;background:0 0;border:none;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:10px 4px;transition:background-color .15s ease-out;display:flex}@media (hover:hover){.switch-row:hover{background:var(--surface-2)}}.switch-row-btn{color:inherit}.switch-row-text{flex-direction:column;gap:2px;min-width:0;display:flex}.switch-row-label{font-size:var(--t-body);color:var(--ink);font-weight:600}.switch-row-hint{font-size:var(--t-caption);color:var(--ink-subtle)}.switch-row input[type=checkbox]{opacity:0;width:1px;height:1px;position:absolute}.switch-row .field-select-wrap{flex:none}.switch{background:var(--surface-3);border:1px solid var(--hairline-strong);border-radius:9999px;flex:none;width:40px;height:24px;transition:background-color .15s ease-out,border-color .15s ease-out;position:relative}.switch[data-on=true]{background:var(--accent);border-color:var(--accent)}.switch-knob{background:var(--ink);border-radius:50%;width:18px;height:18px;transition:transform .18s ease-out;position:absolute;top:2px;left:2px}.switch[data-on=true] .switch-knob{background:var(--on-accent,#fff);transform:translate(16px)}.switch-row:focus-within .switch,.switch-row:focus-visible .switch{outline:2px solid var(--accent);outline-offset:2px}.stage-start{width:100%;font-size:var(--t-body);padding:13px 16px}.stage-card .stage-start{bottom:calc(8px + env(safe-area-inset-bottom));box-shadow:0 0 0 10px var(--surface-1);position:sticky}.camcheck-open,.stage-camerr .btn-ghost{border:1px solid var(--hairline-strong);color:var(--ink);min-height:44px}.stage-cancel{text-align:center;color:var(--ink-subtle);font-size:var(--t-body-sm);background:0 0;border:none;min-height:44px;margin-top:10px;padding:12px 8px;transition:color .15s ease-out;display:block}@media (hover:hover){.stage-cancel:hover{color:var(--ink)}}.stage-hud{text-align:center;padding:1.5rem max(1.25rem, env(safe-area-inset-right)) max(2.75rem, calc(1.25rem + env(safe-area-inset-bottom))) max(1.25rem, env(safe-area-inset-left));background:linear-gradient(#00000059,#000000d9);position:absolute;inset:auto 0 0}.stage-pose{letter-spacing:-.02em;color:var(--ink);text-shadow:0 1px 6px #0009;text-wrap:balance;text-align:center;margin:0 auto;font-size:clamp(28px,8vw,40px);font-weight:800}.stage-count{letter-spacing:-.03em;color:var(--accent-hud);font-variant-numeric:tabular-nums;text-align:center;margin:4px auto 0;font-size:clamp(56px,18vw,88px);font-weight:800;line-height:1}.stage-next{font-size:var(--t-body-sm);color:var(--ink-subtle);text-align:center;margin:.5rem auto 0}.stage-cue{font-size:var(--t-caption);letter-spacing:.16em;text-transform:uppercase;text-align:center;color:var(--accent-hud);text-shadow:0 1px 4px #0009;margin:0 auto .25rem;font-weight:800}.stage-cue[data-phase=transition]{color:var(--ink-subtle)}.stage-pose-transition{color:var(--ink-subtle);text-shadow:none;font-size:clamp(20px,6vw,28px)}.stage-count-transition{color:var(--ink-subtle);font-size:clamp(32px,10vw,48px)}.stage-tips{font-size:var(--t-caption);color:var(--ink-subtle);margin:0 0 1rem;line-height:1.5}.stage-mute{top:max(16px, env(safe-area-inset-top));right:max(20px, env(safe-area-inset-right));z-index:2;border:1px solid var(--hairline-strong);background:color-mix(in srgb, var(--canvas) 55%, transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);width:44px;height:44px;color:var(--ink);cursor:pointer;border-radius:9999px;place-items:center;padding:0;transition:border-color .15s ease-out,background-color .15s ease-out;display:grid;position:absolute}@media (hover:hover){.stage-mute:hover{border-color:var(--accent);background:color-mix(in srgb, var(--canvas) 75%, transparent)}}.stage-exit{top:max(16px, env(safe-area-inset-top));left:max(20px, env(safe-area-inset-left));z-index:2;border:1px solid var(--hairline-strong);background:color-mix(in srgb, var(--canvas) 55%, transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);width:44px;height:44px;color:var(--ink);cursor:pointer;border-radius:9999px;place-items:center;padding:0;transition:border-color .15s ease-out,background-color .15s ease-out;display:grid;position:absolute}@media (hover:hover){.stage-exit:hover{border-color:var(--accent);background:color-mix(in srgb, var(--canvas) 75%, transparent)}}.stage-exit-confirm{top:max(16px, env(safe-area-inset-top));left:max(16px, env(safe-area-inset-left));right:max(16px, env(safe-area-inset-right));z-index:3;border:1px solid var(--hairline-strong);background:color-mix(in srgb, var(--canvas) 85%, transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);font-size:var(--t-body-sm);color:var(--ink);border-radius:9999px;align-items:center;gap:.5rem;padding:8px 8px 8px 14px;display:flex;position:absolute}.stage-exit-confirm span{flex:1}.stage-exit-confirm-yes,.stage-exit-confirm-no{min-height:44px;font-size:var(--t-body-sm);cursor:pointer;border:none;border-radius:9999px;padding:10px 14px;font-weight:600;transition:opacity .15s ease-out}.stage-exit-confirm-yes{background:var(--danger);color:#fff}.stage-exit-confirm-no{background:var(--surface-2);color:var(--ink-muted)}@media (hover:hover){.stage-exit-confirm-yes:hover,.stage-exit-confirm-no:hover{opacity:.85}}.stage-progress-track{justify-content:center;gap:4px;margin-bottom:.75rem;display:flex}.stage-progress-seg{background:var(--hairline-strong);border-radius:9999px;flex:1 1 0;max-width:28px;height:3px;transition:background-color .2s ease-out}.stage-progress-seg[data-state=active]{background:var(--accent)}.stage-progress-count{font-size:var(--t-caption);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted);text-shadow:0 1px 4px #0009;margin-bottom:.5rem;font-weight:600}.compare-grid{gap:.75rem;margin:.75rem 0;padding-bottom:.25rem;display:flex;overflow-x:auto}.compare-row{flex:none;grid-template-columns:1fr 1fr;gap:.3rem;width:8.5rem;display:grid;position:relative}.compare-row figure{margin:0}.compare-row img{aspect-ratio:3/4;object-fit:cover;background:#000;border-radius:12px;width:100%}.compare-row figcaption{font-size:var(--t-caption);color:var(--ink-subtle);white-space:nowrap;text-overflow:ellipsis;grid-column:1/-1;overflow:hidden}.compare-missing{aspect-ratio:3/4;border:1px dashed var(--hairline);font-size:var(--t-caption);color:var(--ink-subtle);border-radius:12px;place-items:center;display:grid}.auth-shell,.auth-shell-embedded{flex-direction:column;align-items:stretch;max-width:380px;margin:0 auto;padding:4rem 1.25rem 2.5rem;display:flex}.auth-shell{justify-content:center;min-height:100dvh;position:relative}.auth-shell-embedded{max-width:none;margin:0;padding:0}.wordmark{z-index:1;justify-content:center;align-items:baseline;gap:.05em;max-width:100%;margin-bottom:2.75rem;display:flex;position:relative}.wordmark-mark,.wordmark-text{overflow-wrap:anywhere;min-width:0}.wordmark-mark{font-size:var(--t-card-title);letter-spacing:-.01em;color:var(--ink-muted);font-weight:400}.wordmark-text{font-size:var(--t-card-title);letter-spacing:-.01em;color:var(--ink);font-weight:700}.auth-shell .wordmark-mark,.auth-shell .wordmark-text,.auth-shell-embedded .wordmark-mark,.auth-shell-embedded .wordmark-text{font-size:var(--t-title)}.wordmark:has(.wordmark-logo){align-items:center}.wordmark-logo{object-fit:cover;background:var(--surface-2);border-radius:8px;flex:none;width:28px;height:28px;margin-right:.4em}.auth-shell .wordmark-logo,.auth-shell-embedded .wordmark-logo{width:40px;height:40px}.auth-card{background:var(--surface-1);border:1px solid var(--hairline);z-index:1;border-radius:12px;padding:2rem 1.75rem;position:relative}.auth-title{font-size:var(--t-title);letter-spacing:-.015em;color:var(--ink);margin:0 0 .4rem;font-weight:650}.auth-sub{font-size:var(--t-body-sm);color:var(--ink-subtle);margin:0 0 1.75rem;line-height:1.5}.auth-form{flex-direction:column;gap:1.1rem;display:flex}.field{flex-direction:column;gap:.45rem;display:flex}.field-label{font-size:var(--t-label);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-subtle);font-weight:600}.field-hint{font-size:var(--t-caption);color:var(--ink-subtle)}.field-optional{text-transform:none;letter-spacing:0;color:var(--ink-subtle);margin-left:.35em;font-weight:400}.role-toggle{grid-template-columns:1fr 1fr;gap:.6rem;margin-bottom:1.4rem;display:grid}.role-toggle-btn{text-align:left;cursor:pointer;background:var(--surface-2);border:1px solid var(--hairline-strong);color:var(--ink);border-radius:12px;flex-direction:column;align-items:flex-start;gap:2px;padding:.7rem .9rem;transition:border-color .15s ease-out,background-color .15s ease-out;display:flex}.role-toggle-btn[aria-checked=true]{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 1px var(--accent) inset}.role-toggle-name{font-size:var(--t-body);font-weight:600}.role-toggle-hint{font-size:var(--t-caption);color:var(--ink-subtle)}.role-toggle-3{grid-template-columns:repeat(3,1fr);gap:.45rem}.role-toggle-3 .role-toggle-btn{padding:.6rem .65rem}.field-input-code{font-family:var(--font-mono,ui-monospace, monospace);letter-spacing:.12em;text-transform:uppercase}.coach-code-row{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.coach-code{font-family:var(--font-mono,ui-monospace, monospace);letter-spacing:.14em;color:var(--ink);font-size:1.35rem;font-weight:700}.coach-code-share{border-top:1px solid var(--hairline);margin-top:1rem;padding-top:1rem}.coach-code-share .cv-card-sub{margin:.2rem 0 .6rem}.switch-role-card .field{margin:.6rem 0}.coach-code-share-flush{border-top:0;margin-top:0;padding:4px 2px}.practice-row-solo{align-items:stretch;gap:.5rem;display:flex}.practice-row-solo .practice-card{flex:1;min-width:0}.practice-edit-btn{border:1px solid var(--hairline);background:var(--surface-1);width:44px;color:var(--ink-subtle);border-radius:12px;flex:none;justify-content:center;align-items:center;transition:color .15s ease-out,border-color .15s ease-out;display:inline-flex}.practice-edit-btn:focus-visible{color:var(--ink);border-color:var(--hairline-strong)}@media (hover:hover){.practice-edit-btn:hover{color:var(--ink);border-color:var(--hairline-strong)}}.stage-camerr{flex-direction:column;align-items:center;gap:.6rem;margin:.25rem 0 1rem;display:flex}.stage-camerr-text{font-size:var(--t-body-sm);color:var(--warning);margin:0}.field-input{font:inherit;font-size:var(--t-body);border:1px solid var(--hairline-strong);background:var(--surface-1);color:var(--ink);border-radius:8px;padding:10px 12px;transition:border-color .15s ease-out,box-shadow .15s ease-out}.field-input::placeholder{color:var(--ink-subtle)}@media (hover:hover){.field-input:hover{border-color:color-mix(in srgb, var(--hairline-strong) 60%, var(--ink-subtle))}}.field-input:focus{border-color:var(--accent)}.field-input.field-input-invalid{border-color:var(--danger);box-shadow:0 0 0 3px color-mix(in srgb, var(--danger) 18%, transparent)}.field-row{justify-content:space-between;align-items:baseline;gap:.5rem;display:flex}.field-forgot{font:inherit;font-size:var(--t-caption);color:var(--ink-subtle);cursor:pointer;text-underline-offset:2px;text-decoration:underline;-webkit-text-decoration-color:color-mix(in srgb, var(--ink-subtle) 45%, transparent);text-decoration-color:color-mix(in srgb, var(--ink-subtle) 45%, transparent);background:0 0;border:none;margin:-12px -4px;padding:12px 4px;font-weight:600;transition:color .15s ease-out}@media (hover:hover){.field-forgot:hover{color:var(--ink)}}.field-forgot:disabled{opacity:.5;cursor:default}.field-select-wrap{display:block;position:relative}.field-select-wrap:after{content:"";border-right:1.5px solid var(--ink-subtle);border-bottom:1.5px solid var(--ink-subtle);pointer-events:none;width:8px;height:8px;position:absolute;top:50%;right:15px;transform:translateY(-70%)rotate(45deg)}.field-select{appearance:none;cursor:pointer;text-overflow:ellipsis;width:100%;height:44px;padding:0 40px 0 12px}.field-input-wrap{display:flex;position:relative}.field-input-wrap .field-input{flex:1;padding-right:2.75rem}.field-toggle{width:2.75rem;height:100%;color:var(--ink-subtle);cursor:pointer;background:0 0;border:none;place-items:center;padding:0;transition:color .15s ease-out;display:grid;position:absolute;top:0;right:0}@media (hover:hover){.field-toggle:hover{color:var(--ink)}}.field-toggle:focus-visible{outline-offset:-2px;border-radius:8px}.auth-error,.error{font-size:var(--t-body-sm);color:var(--danger-text);background:color-mix(in srgb, var(--danger) 12%, transparent);border:1px solid color-mix(in srgb, var(--danger) 32%, transparent);border-radius:8px;align-items:center;gap:.5rem;margin:-.15rem 0 0;padding:10px 12px;animation:.18s ease-out auth-error-in;display:flex}.auth-error-dot{background:var(--danger);border-radius:50%;flex:none;width:.4rem;height:.4rem}.auth-notice{font-size:var(--t-body-sm);color:var(--success-text);background:color-mix(in srgb, var(--success) 12%, transparent);border:1px solid color-mix(in srgb, var(--success) 32%, transparent);border-radius:8px;margin:-.15rem 0 0;padding:10px 12px;animation:.18s ease-out auth-error-in}@keyframes auth-error-in{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}.btn-primary{font:inherit;background:var(--accent);color:var(--on-accent,#fff);cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;gap:.55rem;min-height:44px;margin-top:.25rem;padding:10px 16px;font-size:14px;font-weight:600;text-decoration:none;transition:filter .15s ease-out,transform .1s ease-out,opacity .15s ease-out;display:flex;position:relative}@media (hover:hover){.btn-primary:hover:not(:disabled){background:color-mix(in srgb, var(--accent) 85%, white)}}.btn-primary:active:not(:disabled){transform:translateY(1px)}.btn-primary:disabled{opacity:.6;cursor:default}.btn-spinner{border:2px solid color-mix(in srgb, var(--on-accent,#fff) 35%, transparent);border-top-color:var(--on-accent,#fff);border-radius:50%;flex:none;width:1rem;height:1rem;animation:.6s linear infinite btn-spin}@keyframes btn-spin{to{transform:rotate(360deg)}}.auth-foot{text-align:center;font-size:var(--t-body-sm);color:var(--ink-subtle);z-index:1;margin:2rem 0 0;position:relative}.auth-foot-app{margin-top:.75rem}.auth-foot-app a{color:var(--ink-muted);text-underline-offset:3px;text-decoration:underline}@media (hover:hover){.auth-foot-app a:hover{color:var(--ink)}}.auth-link-btn{border:1px solid var(--hairline-strong);color:var(--ink);border-radius:9999px;margin-left:.4rem;padding:8px 14px;font-weight:600;text-decoration:none;transition:border-color .15s ease-out,background-color .15s ease-out;display:inline-block}@media (hover:hover){.auth-link-btn:hover{background:var(--surface-2);border-color:var(--accent)}}.dash{max-width:1040px;padding:1.5rem 1rem 3rem}@media (width>=860px){.dash{padding:2rem 2rem 4rem}}.dash-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:2rem;display:flex}.dash-title{font-size:var(--t-display);letter-spacing:-.02em;color:var(--ink);margin:0;font-weight:700}.dash-sub{font-size:var(--t-body-sm);color:var(--ink-subtle);margin:.3rem 0 0}.btn-primary-compact{white-space:nowrap;margin-top:0}.stat-row{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:2rem;display:grid}.stat-row>:last-child:nth-child(odd){grid-column:1/-1}@media (width>=860px){.stat-row>:last-child:nth-child(odd){grid-column:auto}}.stat-tile{background:var(--surface-1);border:1px solid var(--hairline);border-radius:12px;padding:16px;transition:border-color .15s ease-out}@media (width>=860px){.stat-tile{padding:20px}}.stat-tile-alert{border-color:color-mix(in srgb, var(--accent) 40%, var(--hairline))}.stat-label{font-size:var(--t-label);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-subtle);margin:0;font-weight:600}.stat-number{letter-spacing:-.02em;color:var(--ink);font-variant-numeric:tabular-nums;margin:.4rem 0 0;font-size:28px;font-weight:700;line-height:1.1}.stat-tile-alert .stat-number{color:var(--accent)}.stat-meta{font-size:var(--t-caption);color:var(--ink-subtle);margin:.3rem 0 0}.invite-panel{background:var(--surface-1);border:1px solid var(--hairline-strong);border-radius:12px;margin-bottom:2rem;padding:20px;animation:.2s ease-out auth-error-in}.invite-panel-title{font-size:var(--t-card-title);letter-spacing:-.01em;color:var(--ink);margin:0;font-weight:600}.invite-panel-sub{font-size:var(--t-body-sm);color:var(--ink-subtle);margin:.3rem 0 1rem}.invite-panel .btn-primary{margin-top:0}.invite-result{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.invite-code{min-width:220px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:var(--t-body-sm);background:var(--surface-2);border:1px solid var(--hairline);color:var(--ink-muted);word-break:break-all;border-radius:8px;flex:1;padding:10px 12px}.btn-copy{font:inherit;border:1px solid var(--hairline-strong);background:var(--surface-1);min-height:40px;color:var(--ink);cursor:pointer;white-space:nowrap;border-radius:8px;justify-content:center;align-items:center;gap:.4rem;padding:10px 16px;font-size:14px;font-weight:600;transition:border-color .15s ease-out,background-color .15s ease-out,color .15s ease-out;display:inline-flex}@media (hover:hover){.btn-copy:hover{border-color:var(--accent)}}.btn-copy-done{border-color:var(--success);color:var(--success-text)}.btn-copy:disabled{opacity:.6;cursor:default}.invite-form{flex-direction:column;gap:1rem;display:flex}.invite-form-names{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}@media (width<=480px){.invite-form-names{grid-template-columns:1fr}}.invite-form-actions{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.invite-sent{font-size:var(--t-body-sm);color:var(--ink-muted);margin:0 0 1rem}.invite-sent strong{color:var(--ink);font-weight:600}.invite-another{margin-top:1rem}.invite-pending{border-top:1px solid var(--hairline);margin-top:1.5rem;padding-top:1.25rem}.invite-pending-title{font-size:var(--t-label);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-subtle);margin:0 0 .5rem;font-weight:600}.invite-pending-list{margin:0;padding:0;list-style:none}.invite-pending-row{justify-content:space-between;align-items:center;gap:.75rem;padding:.6rem 0;display:flex}.invite-pending-row+.invite-pending-row{border-top:1px solid var(--hairline)}.invite-pending-who{flex-direction:column;gap:.15rem;min-width:0;display:flex}.invite-pending-name{font-size:var(--t-body-sm);color:var(--ink);font-weight:600}.invite-pending-meta{font-size:var(--t-caption);color:var(--ink-subtle);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.empty-state{background:var(--surface-1);border:1px dashed var(--hairline-strong);text-align:center;border-radius:12px;flex-direction:column;align-items:center;gap:1rem;padding:2.5rem 1.5rem;display:flex}.empty-state-text{color:var(--ink-subtle);font-size:var(--t-body-sm);margin:0}.empty-state .btn-primary{margin-top:0}.empty-state-icon{background:var(--surface-2);width:48px;height:48px;color:var(--ink-subtle);font-size:var(--t-body);border-radius:9999px;flex:none;place-items:center;display:grid}.empty-state-icon svg{display:block}.roster{background:var(--surface-1);border:1px solid var(--hairline);border-radius:12px;overflow:hidden}.roster-head{font-size:var(--t-label);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-subtle);border-bottom:1px solid var(--hairline);grid-template-columns:1fr 160px 120px;gap:12px;padding:10px 20px;font-weight:600;display:grid}.roster-col-last,.roster-col-status{text-align:right}@media (width<=640px){.roster-head{display:none}}.roster-list{margin:0;padding:0;list-style:none}.roster-list li{border-bottom:1px solid var(--hairline)}.roster-list li:last-child{border-bottom:none}.roster-row{min-height:56px;color:inherit;grid-template-columns:1fr 160px 120px;align-items:center;gap:12px;padding:10px 20px;text-decoration:none;transition:background-color .15s ease-out;display:grid}@media (width<=640px){.roster-row{grid-template-columns:1fr auto;row-gap:4px}.roster-last{text-align:right;grid-column:2}.roster-status{text-align:left;grid-column:1/-1}}@media (hover:hover){.roster-row:hover{background:var(--surface-2)}}.roster-who{align-items:center;gap:12px;min-width:0;display:flex}.avatar-initials{background:var(--surface-2);width:32px;height:32px;color:var(--ink-muted);border-radius:9999px;flex:none;place-items:center;font-size:13px;font-weight:600;display:grid}.roster-namestack{flex-direction:column;gap:3px;min-width:0;display:flex}.roster-name{font-size:var(--t-card-title);letter-spacing:-.01em;color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-weight:600;display:block;overflow:hidden}.roster-meta{font-size:var(--t-caption);color:var(--ink-subtle);font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.roster-meta-alert{color:var(--accent-text)}.roster-last{font-size:var(--t-body-sm);color:var(--ink-subtle);text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.roster-status{text-align:right}.pill{font-size:var(--t-caption);white-space:nowrap;border-radius:9999px;padding:3px 10px;font-weight:400;display:inline-block}.pill-pending{background:var(--accent-soft);color:var(--accent-text)}.pill-reviewed{background:color-mix(in srgb, var(--success) 18%, transparent);color:var(--success-text)}.pill-idle{background:var(--surface-2);color:var(--ink-subtle)}@keyframes skel-pulse{0%,to{opacity:.55}50%{opacity:1}}.skel{background:var(--surface-2);border-radius:6px;animation:1.4s ease-in-out infinite skel-pulse}.skel-title{border-radius:8px;width:140px;height:32px}.skel-sub{width:190px;height:14px;margin-top:10px}.skel-label{width:90px;height:11px}.skel-number{border-radius:8px;width:48px;height:28px;margin-top:8px}.skel-meta{width:100px;height:12px;margin-top:8px}.roster-row-skel{cursor:default}.skel-avatar{border-radius:9999px;flex:none;width:32px;height:32px}.skel-name{width:130px;height:17px}.skel-last{justify-self:end;width:70px;height:13px}.skel-pill{border-radius:9999px;justify-self:end;width:64px;height:20px}@media (prefers-reduced-motion:reduce){.skel{animation:none}}.invite-hero{text-align:center;z-index:1;flex-direction:column;align-items:center;margin-bottom:2rem;display:flex;position:relative}.invite-avatar{background:var(--surface-2);border:1px solid var(--hairline);width:4rem;height:4rem;color:var(--ink-muted);font-weight:700;font-size:var(--t-title);border-radius:50%;place-items:center;margin-bottom:1rem;display:grid}.invite-eyebrow{font-size:var(--t-label);text-transform:uppercase;letter-spacing:.06em;color:var(--ink-subtle);margin:0;font-weight:600}.invite-coach-name{font-size:var(--t-title);letter-spacing:-.015em;color:var(--ink);text-wrap:balance;margin:.35rem 0 0;font-weight:650}.client-detail{max-width:1040px;padding:1.5rem 1rem 3rem}@media (width>=860px){.client-detail{padding:2rem 2rem 4rem}}.back-link{min-height:44px;font-size:var(--t-body-sm);color:var(--ink-subtle);align-items:center;margin:-13px 0 3px;padding:13px 0;text-decoration:none;transition:color .15s ease-out;display:inline-flex}@media (hover:hover){.back-link:hover{color:var(--ink)}}.skel-back{width:70px;height:13.5px;margin-bottom:1rem}.client-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:2rem;display:flex}.client-who{align-items:center;gap:14px;min-width:0;display:flex}.avatar-initials-lg{width:48px;height:48px;font-size:var(--t-card-title)}.skel-avatar-lg{border-radius:9999px;width:48px;height:48px}.client-who>div{min-width:0}.client-name{font-size:var(--t-title);letter-spacing:-.015em;color:var(--ink);overflow-wrap:anywhere;margin:0;font-weight:650}.client-meta{font-size:var(--t-body-sm);color:var(--ink-subtle);font-variant-numeric:tabular-nums;margin:.25rem 0 0}.client-meta-alert{color:var(--accent-text)}.section-block{margin-bottom:2rem}.section-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:.75rem;display:flex}.section-title{font-size:var(--t-card-title);letter-spacing:-.01em;color:var(--ink);margin:0;font-weight:600}.section-count{font-size:var(--t-caption);color:var(--ink-subtle);font-variant-numeric:tabular-nums}.empty-state-compact{text-align:left;align-items:flex-start;padding:1.5rem}.routine-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px;margin-bottom:.85rem;display:grid}.routine-card{background:var(--surface-1);border:1px solid var(--hairline);border-radius:12px;flex-direction:column;gap:5px;padding:16px;text-decoration:none;transition:border-color .15s ease-out,background-color .15s ease-out;display:flex}@media (hover:hover){.routine-card:hover{background:var(--surface-2);border-color:var(--hairline-strong)}}.routine-card-name{font-size:var(--t-card-title);letter-spacing:-.01em;color:var(--ink);font-weight:600}.routine-card-meta{font-size:var(--t-caption);color:var(--ink-subtle)}.assign-row{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:.5rem;display:flex}.assign-select-wrap{flex:1;min-width:200px;position:relative}.assign-select-wrap:after{content:"";border-right:1.5px solid var(--ink-subtle);border-bottom:1.5px solid var(--ink-subtle);pointer-events:none;width:8px;height:8px;position:absolute;top:50%;right:14px;transform:translateY(-70%)rotate(45deg)}.assign-select{appearance:none;background:var(--surface-1);border:1px solid var(--hairline-strong);width:100%;color:var(--ink);font:inherit;font-size:var(--t-body);text-overflow:ellipsis;border-radius:8px;padding:10px 40px 10px 12px;transition:border-color .15s ease-out}@media (hover:hover){.assign-select:hover{border-color:color-mix(in srgb, var(--accent) 40%, var(--hairline-strong))}}.assign-new-link{min-height:44px;font-size:var(--t-body-sm);color:var(--ink-subtle);align-items:center;margin:-12px -2px;padding:12px 2px;text-decoration:none;transition:color .15s ease-out;display:inline-flex}@media (hover:hover){.assign-new-link:hover{color:var(--accent)}}.schedule-card{background:var(--surface-1);border:1px solid var(--hairline);border-radius:12px;flex-direction:column;gap:16px;padding:20px;display:flex}.schedule-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.schedule-summary{font-size:var(--t-body-sm);color:var(--ink-subtle)}.schedule-summary strong{color:var(--ink);font-weight:600}.weekday-chips{flex-wrap:wrap;gap:6px;display:flex}.weekday-chip{border:1px solid var(--hairline-strong);background:var(--surface-1);width:36px;height:36px;color:var(--ink-muted);font-size:var(--t-body-sm);cursor:pointer;border-radius:9999px;padding:0;font-weight:600;transition:background-color .15s ease-out,border-color .15s ease-out,color .15s ease-out}@media (hover:hover){.weekday-chip:hover{border-color:color-mix(in srgb, var(--accent) 40%, var(--hairline-strong))}}.weekday-chip[data-on=true]{background:var(--accent-soft);border-color:var(--accent);color:var(--accent-text)}.schedule-fields{flex-wrap:wrap;gap:14px;display:flex}.schedule-fields .field{flex:1;min-width:160px}.schedule-strip{background:var(--surface-1);border:1px solid var(--hairline);font-size:var(--t-body-sm);color:var(--ink-muted);border-radius:12px;align-items:center;gap:8px;margin-bottom:1.25rem;padding:12px 16px;display:flex}.schedule-strip strong{color:var(--ink);font-weight:600}.schedule-active-btn{flex:none;width:auto;padding:6px 8px}.sub-list{background:var(--surface-1);border:1px solid var(--hairline);border-radius:12px;margin:0;padding:0;list-style:none;overflow:hidden}.sub-list li{border-bottom:1px solid var(--hairline)}.sub-list li:last-child{border-bottom:none}.sub-row{min-height:56px;color:inherit;grid-template-columns:44px minmax(0,1fr) auto auto auto;align-items:center;gap:14px;padding:10px 18px;text-decoration:none;transition:background-color .15s ease-out;display:grid}@media (hover:hover){.sub-row:hover{background:var(--surface-2)}.sub-row:hover .sub-review{color:var(--accent);opacity:1;transform:translate(0)}}.sub-thumb{background:var(--surface-2);border-radius:8px;flex:none;place-items:center;width:44px;height:44px;display:grid;overflow:hidden}.sub-thumb img{object-fit:cover;width:100%;height:100%;display:block}.sub-thumb-fallback{color:var(--ink-subtle);font-size:var(--t-body)}.sub-info{flex-direction:column;gap:2px;min-width:0;display:flex}.sub-routine{font-size:var(--t-card-title);letter-spacing:-.01em;color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.sub-kind{font-size:var(--t-caption);color:var(--ink-subtle)}.sub-date{font-size:var(--t-body-sm);color:var(--ink-subtle);font-variant-numeric:tabular-nums;white-space:nowrap}.sub-review{font-size:var(--t-caption);color:var(--ink-subtle);white-space:nowrap;opacity:0;font-weight:600;transition:opacity .15s ease-out,transform .15s ease-out,color .15s ease-out;transform:translate(-4px)}@media (width<=640px){.sub-row{grid-template-columns:36px minmax(0,1fr) auto;row-gap:4px}.sub-thumb{width:36px;height:36px}.sub-review{display:none}.sub-date{font-size:var(--t-caption)}.sub-row>.pill{grid-column:3;justify-self:end}}.progress-page{max-width:1040px;padding:1.5rem 1rem 3rem}@media (width>=860px){.progress-page{padding:2rem 2rem 4rem}}.progress-title{font-size:var(--t-display);letter-spacing:-.02em;color:var(--ink);margin:.75rem 0 0;font-weight:700}@media (width<=640px){.dash-title,.progress-title{font-size:var(--t-title);letter-spacing:-.015em;font-weight:650}}.progress-sub{font-size:var(--t-body-sm);color:var(--ink-subtle);max-width:46ch;margin:.35rem 0 2rem}.pose-track{margin-bottom:2rem}.pose-track-head{border-bottom:1px solid var(--hairline);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:.85rem;padding-bottom:.6rem;display:flex}.pose-track-head-left{flex-wrap:wrap;align-items:baseline;gap:8px;min-width:0;display:flex}.pose-track-head-right{align-items:baseline;gap:10px;display:flex}.pose-track-name{font-size:var(--t-card-title);letter-spacing:-.01em;color:var(--ink);margin:0;font-weight:600}.pose-track-selected{font-size:var(--t-caption);color:var(--ink-muted);font-variant-numeric:tabular-nums;white-space:nowrap}.pose-track-selected strong{color:var(--ink);font-weight:600}.pose-compare{grid-template-columns:1fr;gap:12px;margin-bottom:16px;display:grid}.pose-compare-two{grid-template-columns:1fr 1fr}.pose-compare-frame{flex-direction:column;gap:8px;text-decoration:none;display:flex}.pose-compare-media{border:1px solid var(--hairline);background:#000;border-radius:16px;transition:border-color .15s ease-out;display:block;overflow:hidden}.pose-compare-media img{aspect-ratio:3/4;object-fit:cover;width:100%;display:block}.pose-compare-frame:focus-visible .pose-compare-media{border-color:var(--hairline-strong)}@media (hover:hover){.pose-compare-frame:hover .pose-compare-media{border-color:var(--hairline-strong)}}.pose-compare-frame-current .pose-compare-media{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.pose-compare-date{font-size:var(--t-caption);color:var(--ink-subtle);font-variant-numeric:tabular-nums;text-align:center}.pose-compare-frame-current .pose-compare-date{color:var(--ink);font-weight:600}@media (width>=900px){.pose-compare-two{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr)}}.pose-strip{grid-template-columns:repeat(auto-fill,minmax(9.5rem,1fr));gap:16px;padding:4px 2px 6px;display:grid}@media (width>=640px){.pose-strip{grid-template-columns:repeat(auto-fill,minmax(11.5rem,1fr));gap:18px}}@media (width>=1100px){.pose-strip{grid-template-columns:repeat(auto-fill,minmax(9.5rem,1fr))}}.pose-frame{cursor:pointer;color:inherit;font:inherit;font-weight:inherit;text-align:left;background:0 0;border:0;border-radius:0;flex-direction:column;gap:8px;padding:0;text-decoration:none;display:flex}.pose-frame-media{border:1px solid var(--hairline);background:#000;border-radius:16px;transition:border-color .15s ease-out,box-shadow .15s ease-out;display:block;overflow:hidden}.pose-frame-media img{aspect-ratio:3/4;object-fit:cover;width:100%;display:block}.pose-frame:focus-visible .pose-frame-media{border-color:var(--hairline-strong)}@media (hover:hover){.pose-frame:hover .pose-frame-media{border-color:var(--hairline-strong)}}.pose-frame-selected .pose-frame-media{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.pose-frame:focus-visible{outline:none}.pose-frame:focus-visible .pose-frame-media{outline:2px solid var(--accent);outline-offset:2px}.pose-frame-axis{align-items:center;gap:6px;padding-left:1px;display:flex}.pose-frame-dot{background:var(--ink-subtle);border-radius:50%;flex:none;width:6px;height:6px;transition:background-color .15s ease-out,transform .15s ease-out}.pose-frame-selected .pose-frame-dot{background:var(--accent);transform:scale(1.3)}.pose-frame-date{font-size:var(--t-caption);color:var(--ink-subtle);white-space:nowrap;font-variant-numeric:tabular-nums}.pose-frame-selected .pose-frame-date{color:var(--ink);font-weight:600}.skel-still{border-radius:16px;width:9.5rem;height:12.6667rem}.routine-group{margin-bottom:2rem}.routine-group .section-title{margin-bottom:.6rem}.routine-list{background:var(--surface-1);border:1px solid var(--hairline);border-radius:12px;margin:0;padding:0;list-style:none;overflow:hidden}.routine-list li{border-bottom:1px solid var(--hairline)}.routine-list li:last-child{border-bottom:none}.routine-row{align-items:center;gap:12px;min-height:56px;padding:10px 16px;transition:background-color .15s ease-out;display:flex}@media (hover:hover){.routine-row:hover{background:var(--surface-2)}}.routine-row-link{min-width:0;color:inherit;flex-direction:column;flex:1;gap:2px;text-decoration:none;display:flex}.routine-row-name{font-size:var(--t-card-title);letter-spacing:-.01em;color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.routine-row-meta,.routine-row-submeta{font-size:var(--t-caption);color:var(--ink-subtle);font-variant-numeric:tabular-nums}.pill-assigned{background:var(--surface-2);color:var(--ink-muted);align-items:center;gap:6px;padding:3px 10px 3px 3px;display:inline-flex}.avatar-initials-tiny{width:20px;height:20px;font-size:var(--t-label)}.icon-btn{width:36px;height:36px;color:var(--ink-subtle);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;flex:none;place-items:center;padding:0;font-size:14px;line-height:1;transition:border-color .15s ease-out,color .15s ease-out,background-color .15s ease-out;display:grid}@media (hover:hover){.icon-btn:hover{color:var(--danger);border-color:color-mix(in srgb, var(--danger) 40%, transparent);background:color-mix(in srgb, var(--danger) 10%, transparent)}}.row-confirm{flex:none;align-items:center;gap:6px;display:flex}.btn-danger-outline{border-color:color-mix(in srgb, var(--danger) 45%, var(--hairline-strong));color:var(--danger-text)}@media (hover:hover){.btn-danger-outline:hover{border-color:var(--danger);background:color-mix(in srgb, var(--danger) 12%, transparent)}}.routine-row-skel{gap:12px}.skel-num{width:20px;height:15px}.editor-main{max-width:640px}.editor-section{margin:2rem 0}.editor-section-head{justify-content:space-between;align-items:baseline;margin-bottom:.75rem;display:flex}.editor-total{align-items:baseline;gap:5px;display:flex}.editor-total-value{font-size:var(--t-card-title);letter-spacing:-.01em;color:var(--ink);font-variant-numeric:tabular-nums;font-weight:700}.editor-total-label{font-size:var(--t-label);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-subtle);font-weight:600}.pose-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.pose-row{background:var(--surface-1);border:1px solid var(--hairline);border-radius:12px;align-items:center;gap:10px;padding:8px 10px;transition:border-color .15s ease-out;display:flex}.pose-row:focus-within{border-color:var(--hairline-strong)}.pose-num{background:var(--surface-3);width:22px;height:22px;color:var(--ink-muted);font-size:var(--t-label);font-variant-numeric:tabular-nums;border-radius:6px;flex:none;place-items:center;font-weight:700;display:grid}.pose-name-input{min-width:0;font-size:var(--t-body);flex:14rem;padding:8px 10px}.pose-hold-wrap{flex:none;position:relative}.pose-hold-input{width:4.6rem;font-size:var(--t-body);font-variant-numeric:tabular-nums;-moz-appearance:textfield;padding:8px 22px 8px 10px}.pose-hold-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.pose-hold-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.pose-hold-suffix{font-size:var(--t-caption);color:var(--ink-subtle);pointer-events:none;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.pose-reorder{border:1px solid var(--hairline-strong);border-radius:8px;flex-direction:column;flex:none;display:flex;overflow:hidden}.move-btn{background:var(--surface-3);width:32px;height:28px;color:var(--ink-subtle);cursor:pointer;border:none;place-items:center;padding:0;transition:background-color .15s ease-out,color .15s ease-out;display:grid}.move-btn-up{border-bottom:1px solid var(--hairline-strong)}@media (hover:hover){.move-btn:hover:not(:disabled){background:var(--surface-2);color:var(--ink)}}.move-btn:active:not(:disabled){background:color-mix(in srgb, var(--accent) 20%, var(--surface-2));color:var(--ink)}.move-btn:focus-visible{outline:2px solid var(--accent);outline-offset:-2px;z-index:1;position:relative}.move-btn:disabled{opacity:.3;cursor:default}.add-pose-btn{font:inherit;font-size:var(--t-body-sm);color:var(--ink-subtle);border:1px dashed var(--hairline-strong);cursor:pointer;background:0 0;border-radius:12px;width:100%;margin-top:8px;padding:10px;font-weight:600;transition:border-color .15s ease-out,color .15s ease-out,background-color .15s ease-out}@media (hover:hover){.add-pose-btn:hover{border-color:var(--accent);color:var(--ink);background:var(--surface-1)}}.review-page{max-width:1160px;padding:1.5rem 1rem 4rem}@media (width>=860px){.review-page{padding:2rem 2rem 4rem}}.review-head{margin-bottom:1.5rem}.review-page-empty{flex-direction:column;min-height:calc(100dvh - 3rem);display:flex}.empty-state-center{flex:1;justify-content:center;align-items:center;padding:1rem 0 3rem;display:flex}.empty-state-center .empty-state{max-width:360px}.review-title-row{flex-wrap:wrap;align-items:center;gap:10px;margin:.5rem 0 0;display:flex}.review-title{font-size:var(--t-title);letter-spacing:-.015em;color:var(--ink);margin:0;font-weight:650}.review-sub{font-size:var(--t-body-sm);color:var(--ink-subtle);font-variant-numeric:tabular-nums;margin:.3rem 0 0}.review-grid{grid-template-columns:1fr;grid-template-areas:"media""extra""feedback";align-items:start;gap:2rem;display:grid}.review-media{grid-area:media;min-width:0}.review-extra{grid-area:extra;min-width:0}.review-feedback{grid-area:feedback;min-width:0}@media (width>=900px){.review-grid{grid-template:"media feedback""extra feedback"1fr/minmax(0,1.2fr) minmax(320px,.8fr);gap:1.75rem 2.5rem}.review-feedback{align-self:start;position:sticky;top:1.5rem}}.player-frame{background:var(--surface-1);border:1px solid var(--hairline);border-radius:16px;position:relative;overflow:hidden}.player{aspect-ratio:16/9;object-fit:contain;background:#000;width:100%;max-height:46vh;display:block}.player-placeholder{aspect-ratio:16/9;background:radial-gradient(120% 90% at 50% 0%, var(--surface-2), var(--surface-1));flex-direction:column;justify-content:center;align-items:center;gap:.6rem;width:100%;max-height:46vh;display:flex}.player-placeholder-icon{background:var(--surface-3);width:52px;height:52px;color:var(--ink-subtle);border-radius:9999px;place-items:center;font-size:16px;display:grid}.player-placeholder-text{font-size:var(--t-body-sm);color:var(--ink-subtle);margin:0}.scrub-rail{background:var(--surface-1);border:1px solid var(--hairline);border-radius:8px;height:34px;margin-top:12px;position:relative;overflow:hidden}.scrub-mark{cursor:pointer;border:none;border-right:1px solid var(--canvas);background:0 0;padding:0;transition:background-color .15s ease-out;position:absolute;top:0;bottom:0}@media (hover:hover){.scrub-mark:hover{background:var(--surface-2)}}.scrub-mark-fill{width:100%;height:100%;display:block}.scrub-mark-active{background:var(--accent-soft)}.scrub-mark-active .scrub-mark-fill{box-shadow:inset 0 -2px 0 var(--accent)}.scrub-legend{justify-content:space-between;align-items:baseline;gap:8px;margin-top:6px;display:flex}.scrub-legend-time{font-size:var(--t-label);color:var(--ink-subtle);font-variant-numeric:tabular-nums;flex:none}.scrub-legend-name{font-size:var(--t-body-sm);color:var(--ink);text-align:center;flex:1;font-weight:600}.review-extra{flex-direction:column;gap:1.5rem;margin-top:.25rem;display:flex}@media (width>=1500px){.review-extra{flex-direction:row;gap:2rem}.review-extra .section-block-tight{flex:1 1 0;min-width:0}}.section-block-tight{min-width:0;margin-bottom:0}.compare-legend{font-size:var(--t-caption);color:var(--ink-subtle);margin:0 0 .5rem}.compare-legend span{color:var(--ink-muted);font-weight:600}.compare-card{background:var(--surface-1);border:1px solid var(--hairline);border-radius:12px;min-width:0;padding:1.25rem}@media (width>=1500px){.review-extra .compare-card{flex:1 1 0}}.compare-card .section-head{margin-bottom:.85rem}.compare-card .assign-select-wrap{flex:none;min-width:180px}.compare-empty{text-align:center;flex-direction:column;align-items:center;gap:.85rem;padding:1.5rem 1rem;display:flex}.compare-empty-slot{aspect-ratio:3/4;border:1px dashed var(--hairline-strong);background:var(--surface-2);border-radius:12px;width:100%;max-width:220px}.compare-empty .empty-state-text{margin:0}.stills-strip figure{cursor:pointer}.stills-strip figure.still-active img{outline:2px solid var(--accent);outline-offset:2px}.stills-strip figure.still-active figcaption{color:var(--ink);font-weight:600}.feedback-panel{background:var(--surface-1);border:1px solid var(--hairline);border-radius:12px;padding:1.25rem}.note-add{gap:8px;margin:.5rem 0 0;display:flex}.note-add input{flex:1;min-width:0}.notes-list{flex-direction:column;gap:6px;margin:.75rem 0 0;padding:0;list-style:none;display:flex}.note-item{background:var(--surface-2);border-left:2px solid var(--hairline-strong);border-radius:8px;align-items:flex-start;gap:10px;padding:8px 10px;display:flex}.note-time{font:inherit;font-size:var(--t-caption);font-variant-numeric:tabular-nums;color:var(--accent-text);cursor:pointer;background:0 0;border:none;flex:none;align-items:center;min-height:44px;margin:-12px -6px;padding:12px 6px;font-weight:600;display:inline-flex}@media (hover:hover){.note-time:hover{text-decoration:underline}}.note-text{font-size:var(--t-body-sm);color:var(--ink-muted);flex:1;line-height:1.4}.feedback-panel textarea{resize:vertical;width:100%;margin-top:.5rem}.feedback-panel .btn-primary{width:100%}.voice-recorder{margin:.5rem 0 0}.voice-record-btn{font:inherit;font-size:var(--t-body-sm);color:var(--ink);background:var(--surface-1);border:1px solid var(--hairline-strong);cursor:pointer;border-radius:9999px;align-items:center;gap:8px;min-height:40px;padding:10px 16px;font-weight:600;transition:border-color .15s ease-out,color .15s ease-out;display:inline-flex}@media (hover:hover){.voice-record-btn:hover{border-color:var(--accent);color:var(--accent-text)}}.voice-record-btn-active{border-color:var(--accent);color:var(--accent-text);cursor:default}.voice-record-dot{background:var(--danger);border-radius:9999px;flex:none;width:8px;height:8px}.voice-record-dot-pulse{animation:1.1s ease-in-out infinite voice-pulse}@keyframes voice-pulse{0%,to{opacity:1}50%{opacity:.35}}@media (prefers-reduced-motion:reduce){.voice-record-dot-pulse{animation:none}}.voice-recording-row,.voice-preview-row{background:var(--surface-2);border:1px solid var(--hairline);border-radius:12px;flex-wrap:wrap;align-items:center;gap:10px;padding:10px 12px;display:flex}.voice-elapsed{font-size:var(--t-body-sm);color:var(--ink-muted);font-variant-numeric:tabular-nums;font-weight:600}.voice-audio{flex:220px;min-width:0;height:36px}.voice-existing-label{font-size:var(--t-body-sm);color:var(--ink-muted);flex:1}.voice-demo-note{font-size:var(--t-caption);color:var(--ink-subtle);margin:.5rem 0 0}.voice-player-card{background:var(--surface-1);border:1px solid var(--hairline);border-radius:12px;flex-direction:column;gap:8px;margin-bottom:1rem;padding:12px;display:flex}.voice-player-label{font-size:var(--t-body-sm);color:var(--ink-muted);font-weight:600}.voice-player-placeholder{font-size:var(--t-caption);color:var(--ink-subtle);background:var(--surface-2);border-radius:8px;padding:10px 12px}.client-home{max-width:560px;padding:1.5rem 1rem 3.5rem}@media (width>=640px){.client-home{padding:2rem 1.5rem 4rem}}@media (width>=860px){.client-home{padding:2rem 2rem 4rem}}.client-nav{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.75rem;display:flex}.client-nav .wordmark{justify-content:flex-start;min-width:0;margin-bottom:0}.client-nav-action{width:44px;height:44px;color:var(--ink-subtle);border-radius:8px;flex:none;justify-content:center;align-items:center;transition:background-color .15s ease-out,color .15s ease-out;display:inline-flex}button.client-nav-action{cursor:pointer;background:0 0;border:none;padding:0}.client-nav-action:focus-visible{background:var(--surface-2);color:var(--ink)}@media (hover:hover){.client-nav-action:hover{background:var(--surface-2);color:var(--ink)}}.client-home-head{margin-bottom:2rem}.client-home-title{font-size:var(--t-title);letter-spacing:-.015em;color:var(--ink);margin:0;font-weight:650}.client-home-sub{font-size:var(--t-body-sm);color:var(--ink-subtle);max-width:32ch;margin:.3rem 0 0}.practice-stack{flex-direction:column;gap:10px;display:flex}.practice-card{background:var(--surface-1);border:1px solid var(--hairline);min-height:76px;color:inherit;border-radius:12px;align-items:center;gap:14px;padding:16px;text-decoration:none;transition:border-color .15s ease-out,background-color .15s ease-out,transform .1s ease-out;display:flex}@media (hover:hover){.practice-card:hover{background:var(--surface-2);border-color:var(--hairline-strong)}}.practice-card:active{transform:scale(.985)}.practice-card:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.practice-card-play{background:var(--accent-soft);width:44px;height:44px;color:var(--accent);border-radius:9999px;flex:none;place-items:center;transition:background-color .15s ease-out;display:grid}@media (hover:hover){.practice-card:hover .practice-card-play{background:color-mix(in srgb, var(--accent) 28%, transparent)}}.practice-card-body{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.practice-card-name{font-size:var(--t-card-title);letter-spacing:-.01em;color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.practice-card-meta{font-size:var(--t-body-sm);color:var(--ink-subtle);font-variant-numeric:tabular-nums}.practice-card-chevron{font-size:var(--t-title);color:var(--ink-subtle);flex:none;line-height:1}.practice-card-skel{cursor:default;flex-direction:column;justify-content:center;align-items:flex-start}.sub-list-compact .sub-row-compact{align-items:center;gap:12px;min-height:60px;padding:10px 16px;display:flex}.sub-dot{background:var(--hairline-strong);border-radius:50%;flex:none;width:8px;height:8px}.sub-dot-ready{background:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.sub-row-unread{background:var(--surface-2);border-radius:12px}.sub-row-unread .sub-routine{color:var(--ink);font-weight:700}.sub-list-compact .sub-info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.sub-list-compact .sub-routine{font-size:var(--t-card-title);letter-spacing:-.01em;color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.sub-list-compact .sub-kind{font-size:var(--t-caption);color:var(--ink-subtle);font-variant-numeric:tabular-nums}.sub-list-compact .pill{flex:none}.pill-warning{background:color-mix(in srgb, var(--warning) 16%, transparent);color:var(--warning-text);border-color:color-mix(in srgb, var(--warning) 40%, transparent)}.upload-progress{margin-bottom:1rem}.upload-progress-track{background:var(--surface-2);border:1px solid var(--hairline);border-radius:9999px;height:6px;overflow:hidden}.upload-progress-fill{background:var(--accent);border-radius:9999px;height:100%;transition:width .35s ease-out}.upload-progress-fill-indeterminate{transition:none;animation:1.4s ease-in-out infinite upload-sweep}@keyframes upload-sweep{0%{transform:translate(-100%)}to{transform:translate(250%)}}@media (prefers-reduced-motion:reduce){.upload-progress-fill-indeterminate{opacity:.55;width:100%;animation:none}}.upload-progress-label{font-size:var(--t-caption);color:var(--ink-subtle);font-variant-numeric:tabular-nums;margin-top:.4rem;display:block}.review-rerecord{text-align:center;margin-top:.6rem;display:block}.review-rerecord-disabled{opacity:.45;pointer-events:none}.voice-pick{gap:.4rem;display:flex}.voice-pick .voice-active{border-color:var(--accent);color:var(--accent-text)}.client-note-field{flex-direction:column;gap:.45rem;margin:0 0 1rem;display:flex}.client-note-field textarea{resize:vertical}.client-note-panel{background:var(--surface-2);border:1px solid var(--hairline);border-radius:12px;flex-direction:column;gap:6px;margin-bottom:1.25rem;padding:12px 14px;display:flex}.client-note-panel p{font-size:var(--t-body-sm);color:var(--ink-muted);margin:0;line-height:1.5}.wordmark-preview{font-size:var(--t-card-title);letter-spacing:-.01em;color:var(--ink);font-weight:600}.pose-strip-swipe{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:thin;flex-wrap:nowrap;display:flex;overflow-x:auto}.pose-strip-swipe .pose-frame{scroll-snap-align:start;flex:0 0 9.5rem}@media (width>=640px){.pose-strip-swipe .pose-frame{flex-basis:11.5rem}}.pose-strip-swipe .pose-frame-media img,.pose-compare-media img{object-position:top center}.overlay-toggle{font-size:var(--t-caption);background:var(--surface-1);border:1px solid var(--hairline-strong);min-height:36px;color:var(--ink-muted);cursor:pointer;border-radius:8px;padding:8px 12px;font-weight:600;transition:border-color .15s ease-out,color .15s ease-out,background-color .15s ease-out}@media (hover:hover){.overlay-toggle:hover{color:var(--ink);border-color:var(--ink-subtle)}}.overlay-toggle-active{background:var(--accent-soft);border-color:var(--accent);color:var(--accent-text)}.pose-compare-overlay{grid-template-columns:1fr;max-width:22rem}.pose-overlay-frame{flex-direction:column;gap:8px;display:flex}.pose-overlay-media{aspect-ratio:3/4;border:1px solid var(--accent);box-shadow:0 0 0 1px var(--accent);background:#000;border-radius:16px;position:relative;overflow:hidden}.pose-overlay-media img{object-fit:cover;object-position:top center;width:100%;height:100%;position:absolute;inset:0}.pose-overlay-under{opacity:1}.pose-overlay-over{opacity:.5}@media (pointer:coarse){input,select,textarea,.field-input,.assign-select,.pose-name-input,.pose-hold-input{font-size:16px}.btn-ghost,.btn-copy,.overlay-toggle,.auth-link-btn,.voice-record-btn,.add-pose-btn,.schedule-active-btn{min-height:44px}.icon-btn,.swatch{width:44px;height:44px}.move-btn{width:44px;height:32px}.weekday-chip{flex:36px;width:auto;min-width:36px;max-width:48px;height:44px}}.workshop-hud{padding:max(2.5rem, env(safe-area-inset-top)) 1.25rem calc(1.25rem + env(safe-area-inset-bottom));text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:.65rem;display:flex;position:absolute;inset:0}.workshop-seg-title{letter-spacing:.1em}.workshop-everyone{min-height:44px;color:var(--ink-subtle);font-size:var(--t-body);align-items:center;margin:0;display:flex}.workshop-numbers{flex-wrap:wrap;justify-content:center;gap:.5rem;max-width:480px;min-height:44px;display:flex}.workshop-num{background:var(--accent);min-width:44px;height:44px;color:var(--on-accent,#fff);font-size:var(--t-title);letter-spacing:-.02em;border-radius:12px;justify-content:center;align-items:center;padding:0 .6rem;font-weight:800;display:inline-flex}.workshop-call{font-size:clamp(34px,10vw,56px)}.workshop-count-paused{color:var(--ink-subtle)}.workshop-controls{gap:.5rem;width:100%;max-width:440px;margin-top:1rem;display:flex}.workshop-ctl{font-weight:700;font-size:var(--t-body);background:var(--surface-2);color:var(--ink);border:1px solid var(--hairline-strong);border-radius:12px;flex:1 1 0;padding:.9rem .25rem}.workshop-ctl-main{background:var(--accent);color:var(--on-accent,#fff);border-color:#0000;flex:1.4 1 0}.workshop-plan{background:var(--surface-2);color:var(--ink-muted);font-size:var(--t-body-sm);text-align:center;border-radius:12px;margin:1rem 0 0;padding:.6rem .8rem}.camcheck-open{margin-top:.35rem}.camcheck{--cc:color-mix(in srgb, var(--ink) 70%, transparent);position:absolute;inset:0}.camcheck[data-state=bad]{--cc:var(--danger)}.camcheck[data-state=ok]{--cc:var(--warning)}.camcheck[data-state=good],.camcheck[data-state=locked]{--cc:var(--success)}.camcheck:before{content:"";pointer-events:none;box-shadow:inset 0 0 0 4px var(--cc), inset 0 0 60px color-mix(in srgb, var(--cc) 45%, transparent);transition:box-shadow .25s ease-out;position:absolute;inset:0}.camcheck-status{top:max(1rem, env(safe-area-inset-top));text-align:center;flex-direction:column;align-items:center;gap:.25rem;display:flex;position:absolute;left:1rem;right:1rem}.camcheck-verdict{letter-spacing:-.01em;color:#fff;background:color-mix(in srgb, var(--cc) 55%, #0009);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:16px;max-width:30rem;margin:0;padding:.55rem 1.1rem;font-size:clamp(1.15rem,5vw,1.6rem);font-weight:800;line-height:1.2;transition:background .25s ease-out}.camcheck-degrees{font-size:var(--t-body-sm);color:#fff;font-variant-numeric:tabular-nums;text-shadow:0 1px 3px #000000d9;margin:0;font-weight:600}.camcheck-figure{height:78%;fill:color-mix(in srgb, var(--cc) 10%, transparent);stroke:#ffffffd9;stroke-width:1.6px;stroke-linejoin:round;vector-effect:non-scaling-stroke;pointer-events:none;position:absolute;top:12%;left:50%;transform:translate(-50%)}.camcheck-horizon{pointer-events:none;width:min(72vw,320px);height:0;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.camcheck-ticks:before,.camcheck-ticks:after{content:"";background:#ffffffe6;border-radius:2px;width:18%;height:3px;position:absolute;top:-1.5px;box-shadow:0 0 6px #0009}.camcheck-ticks:before{left:0}.camcheck-ticks:after{right:0}.camcheck-bar{background:var(--cc);height:5px;box-shadow:0 0 10px color-mix(in srgb, var(--cc) 70%, transparent), 0 0 3px #000000b3;border-radius:3px;transition:transform .12s linear,background .25s ease-out;position:absolute;top:-2.5px;left:22%;right:22%}.camcheck-foot{padding:1rem 1.25rem calc(1.25rem + env(safe-area-inset-bottom));text-align:center;background:linear-gradient(#0000,#000c);flex-direction:column;gap:.75rem;display:flex;position:absolute;bottom:0;left:0;right:0}.camcheck-hint{color:#fff;font-size:var(--t-body);text-shadow:0 1px 3px #000c;margin:0;font-weight:500}.camcheck-actions{justify-content:center;gap:.6rem;display:flex}.camcheck-division{justify-content:center;display:flex}.camcheck-division .field-select{width:auto;min-width:12rem;font-size:var(--t-body-sm);background-color:color-mix(in srgb, var(--canvas) 60%, transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);padding-block:.45rem;font-weight:600}.camcheck-actions .btn-primary{flex:auto;max-width:280px}.cam-level-warn{top:max(1rem, env(safe-area-inset-top));font-size:var(--t-body-sm);background:color-mix(in srgb, var(--danger) 30%, #0009);border:1.5px solid var(--danger);color:var(--danger-text);border-radius:9999px;padding:.4rem .8rem;font-weight:700;position:absolute;left:50%;transform:translate(-50%)}.workshop-setup-fields{flex-direction:column;gap:1.1rem;margin-bottom:1.25rem;display:flex}.field-pair{align-items:stretch}.field-pair>.field{flex:1 1 0;min-width:0}.camcheck-actions .btn-ghost{background:color-mix(in srgb, var(--canvas) 55%, transparent);border:1px solid var(--hairline-strong);color:var(--ink);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}a[href="/account/delete"]{color:var(--danger-text);font-weight:600}@media (hover:hover){a[href="/account/delete"]:hover{color:color-mix(in srgb, var(--danger-text) 80%, white)}}.delete-list{padding-left:1.1rem;line-height:1.7}.delete-account .editor-section{flex-direction:column;gap:.9rem;display:flex}.delete-account .editor-section>.btn-copy{align-self:flex-start}.tele-stage{position:relative}.tele-canvas{pointer-events:none;width:100%;height:100%;display:block;position:absolute;inset:0}.tele-canvas-armed{pointer-events:auto;touch-action:none;cursor:crosshair}.tele-canvas-readonly{pointer-events:none}.tele-tools{border-top:1px solid var(--hairline);background:var(--surface-1);-webkit-user-select:none;user-select:none;flex-wrap:wrap;align-items:center;gap:8px 10px;padding:12px;display:flex}.tele-group{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.tele-tool,.tele-undo,.tele-clear,.tele-step{min-height:36px;color:var(--ink-muted);background:0 0;border-color:#0000;padding:8px 10px}@media (hover:hover){.tele-tool:hover:not(:disabled),.tele-undo:hover:not(:disabled),.tele-clear:hover:not(:disabled),.tele-step:hover:not(:disabled),.tele-done:hover{background:var(--surface-2);color:var(--ink);border-color:#0000}}.tele-tool[aria-pressed=true],.tele-tool[aria-pressed=true]:hover{background:var(--accent-soft);color:var(--accent-text)}.tele-tool:disabled,.tele-undo:disabled,.tele-clear:disabled,.tele-step:disabled{opacity:.45;cursor:default}.tele-step{width:36px;padding:0;font-size:11px;line-height:1}.tele-swatches{gap:4px}.tele-swatch{border:4px solid var(--surface-1);width:36px;height:36px}.tele-swatch.active{border-color:var(--surface-1);outline:2px solid var(--ink);outline-offset:-2px}.tele-swatch.active:focus-visible{outline-color:var(--accent)}.tele-swatch:disabled{opacity:.45;cursor:default}.tele-pin{width:auto;min-height:36px;margin-top:0;margin-left:auto;padding:8px 14px}.tele-hint{flex-basis:100%;min-height:1.4em;margin:0;line-height:1.4}@media (pointer:coarse){.tele-tool,.tele-undo,.tele-clear,.tele-step,.tele-pin{min-height:44px}.tele-step{width:44px}.tele-swatches{gap:0}.tele-swatch{border-width:6px;width:44px;height:44px}.tele-swatch.active{outline-offset:-4px}}@media (width<=640px){.tele-tools{gap:8px}.tele-tool{padding:8px 6px}.tele-pin{padding:8px 12px}}.scrub-tick{cursor:pointer;z-index:1;background:0 0;border:none;width:24px;margin-left:-12px;padding:0;position:absolute;top:0;bottom:0}.scrub-tick:before{content:"";background:var(--ink-muted);width:2px;margin-left:-1px;transition:background-color .15s ease-out;position:absolute;top:0;bottom:0;left:50%}.scrub-tick-active:before{background:var(--accent)}@media (hover:hover){.scrub-tick:hover:before{background:var(--ink)}}.scrub-tick:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}@media (pointer:coarse){.scrub-tick{width:32px;margin-left:-16px}}.drawings-block{margin-top:.75rem}.drawings-title{font-size:var(--t-label);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-subtle);margin:0;font-weight:600}.drawings-list{margin-top:.5rem}.drawing-item{align-items:center}.drawing-item-active{border-left-color:var(--accent)}.drawing-edit{font-size:var(--t-body-sm);padding:8px 10px}@media (hover:hover){.drawing-edit:hover{background:var(--surface-3)}}@media (width<=640px){.routine-row{flex-wrap:wrap;row-gap:8px}.routine-row-link{flex:1 0 100%}.pose-row{flex-wrap:wrap;row-gap:8px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.stage-spinner,.btn-spinner{opacity:.7;border-top-color:currentColor}}.desk{grid-template-columns:1fr;align-content:start;min-height:100dvh;display:grid}.desk-main{min-width:0}.desk-ico{flex:none;width:20px;height:20px}.desk-rail{background:var(--surface-1);border-bottom:1px solid var(--hairline);scrollbar-width:none;align-items:center;gap:.5rem;padding:.5rem .75rem;display:flex;overflow-x:auto}.desk-rail::-webkit-scrollbar{display:none}.desk-brand{flex:none;align-items:center;gap:10px;display:flex}.desk-brand-tile{background:var(--accent);width:36px;height:36px;color:var(--on-accent,#fff);letter-spacing:.02em;border-radius:9px;place-items:center;font-size:13px;font-weight:700;text-decoration:none;display:grid}.desk-brand-name{font-size:var(--t-body-sm);color:var(--ink);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:600;display:none;overflow:hidden}.desk-toggle{color:var(--ink-subtle);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:4px;display:none}@media (hover:hover){.desk-toggle:hover{color:var(--ink);background:var(--surface-2)}}.desk-nav{flex:auto;gap:2px;min-width:0;display:flex}.desk-link{color:var(--ink-subtle);font-size:var(--t-body-sm);white-space:nowrap;border-radius:8px;align-items:center;gap:10px;padding:8px 10px;text-decoration:none;transition:background-color .15s ease-out,color .15s ease-out;display:flex}.desk-link.active{color:var(--accent-text);background:var(--accent-soft)}@media (hover:hover){.desk-link:hover{color:var(--ink);background:var(--surface-2)}.desk-link.active:hover{background:var(--accent-soft);color:var(--accent-text)}}.desk-link-label{flex:auto}.desk-brand-tile-logo{background:var(--surface-2);overflow:hidden}.desk-brand-tile img{object-fit:cover;width:100%;height:100%;display:block}.desk-divider{background:var(--hairline);border:0;flex:none;align-self:stretch;width:1px;margin:4px}.desk-group,.desk-sub{gap:2px;display:flex}.desk-sub[hidden]{display:none}button.desk-link{font:inherit;font-size:var(--t-body-sm);cursor:pointer;text-align:left;background:0 0;border:0;font-weight:400}.desk-chev{width:16px;height:16px;transition:transform .15s ease-out}.desk-group-btn[aria-expanded=true] .desk-chev{transform:rotate(180deg)}@media (prefers-reduced-motion:reduce){.desk-chev{transition:none}}.desk-badge{font-size:var(--t-label);background:var(--accent);color:var(--on-accent,#fff);font-variant-numeric:tabular-nums;border-radius:9999px;padding:1px 7px;font-weight:650}.desk-foot{display:none}.desk-avatar{background:var(--surface-3);width:32px;height:32px;color:var(--ink-muted);font-size:var(--t-label);border-radius:8px;flex:none;place-items:center;font-weight:650;display:grid}.desk-foot-name{min-width:0;font-size:var(--t-body-sm);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.desk-signout{font-size:var(--t-caption);grid-column:2;justify-self:start;padding:2px 0}.desk-actions{display:none}.desk-action{font-size:var(--t-body-sm);color:var(--ink-muted);border-radius:8px;align-items:center;gap:6px;padding:6px 10px;text-decoration:none;display:inline-flex}.desk-action .desk-ico{width:16px;height:16px}@media (hover:hover){.desk-action:hover{color:var(--ink);background:var(--surface-2)}}.desk-topbar{z-index:30;padding:max(.5rem, env(safe-area-inset-top)) 1rem .5rem;background:color-mix(in srgb, var(--surface-1) 92%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--hairline);align-items:center;gap:10px;display:flex;position:sticky;top:0}.desk-topbar .desk-brand-tile{border-radius:8px;flex:none;width:32px;height:32px;font-size:12px}.desk-topbar-name{min-width:0;font-weight:700;font-size:var(--t-body);color:var(--ink);text-overflow:ellipsis;white-space:nowrap;flex:auto;overflow:hidden}.desk-topbar-add{flex:none;align-items:center;gap:6px;display:inline-flex}.desk-topbar-add .desk-ico{width:16px;height:16px}.desk-tabbar{z-index:30;padding:6px 4px max(6px, env(safe-area-inset-bottom));background:color-mix(in srgb, var(--surface-1) 94%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--hairline);grid-template-columns:repeat(5,1fr);display:grid;position:fixed;bottom:0;left:0;right:0}.desk-tab{color:var(--ink-subtle);border-radius:10px;flex-direction:column;align-items:center;gap:3px;min-width:0;padding:4px 2px;font-size:11px;font-weight:600;text-decoration:none;display:flex}.desk-tab.active{color:var(--accent-text)}.desk-tab-ico{border-radius:14px;place-items:center;width:44px;height:28px;display:grid;position:relative}.desk-tab.active .desk-tab-ico{background:var(--accent-soft)}.desk-tab-ico .desk-ico{width:22px;height:22px}.desk-tab-badge{background:var(--accent);min-width:18px;height:18px;color:var(--on-accent,#fff);text-align:center;border-radius:9px;padding:0 5px;font-size:10.5px;font-weight:700;line-height:18px;position:absolute;top:-3px;right:2px}.desk-tab-label{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}@media (width<=899px){.desk-rail{display:none}.desk-main{padding-bottom:calc(76px + env(safe-area-inset-bottom))}}.more-page .more-heading{font-size:var(--t-label);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-subtle);margin:1.25rem 0 .5rem;font-weight:700}.more-card{margin-top:.75rem;padding:4px 0}.more-row{width:100%;color:var(--ink);font:inherit;font-size:var(--t-body);cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:12px;padding:14px 18px;text-decoration:none;display:flex}.more-row+.more-row{border-top:1px solid var(--hairline)}.more-row>.desk-ico:first-child{color:var(--ink-subtle)}.more-row-label{flex:auto}.more-row-chev{width:16px;height:16px;color:var(--ink-subtle)}@media (hover:hover){.more-row:hover{background:var(--surface-2)}}.more-who{border-bottom:1px solid var(--hairline);align-items:center;gap:12px;padding:14px 18px;display:flex}.more-who-stack{flex-direction:column;min-width:0;display:flex}.more-who-name{color:var(--ink);font-weight:600}.more-who-meta{font-size:var(--t-caption);color:var(--ink-subtle);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.more-signout,.more-signout>.desk-ico:first-child{color:var(--danger-text)}@media (width>=900px){.desk-topbar,.desk-tabbar{display:none}.desk{grid-template-columns:232px minmax(0,1fr)}.desk-collapsed{grid-template-columns:76px minmax(0,1fr)}.desk-rail{border-bottom:0;border-right:1px solid var(--hairline);flex-direction:column;align-items:stretch;gap:1.25rem;height:100dvh;padding:1rem .75rem;position:sticky;top:0;overflow:visible}.desk-brand{padding:0 .25rem}.desk-brand-name{flex:auto;display:block}.desk-toggle{display:inline-flex}.desk-nav{flex-direction:column;flex:none}.desk-link,button.desk-link{font-size:var(--t-body);padding:9px 10px}.desk-divider{width:auto;height:1px;margin:8px 4px}.desk-group,.desk-sub{flex-direction:column}.desk-sub{padding-left:12px}.desk-foot{border-top:1px solid var(--hairline);grid-template-columns:auto minmax(0,1fr);align-items:center;gap:2px 10px;margin-top:auto;padding:.85rem .25rem 0;display:grid}.desk-actions{flex-wrap:wrap;justify-content:flex-end;gap:4px;padding:.75rem 2rem 0;display:flex}.desk-collapsed .desk-brand{flex-direction:column;gap:6px}.desk-collapsed .desk-brand-name,.desk-collapsed .desk-link-label,.desk-collapsed .desk-foot-name,.desk-collapsed .desk-signout,.desk-collapsed .desk-chev{display:none}.desk-collapsed .desk-sub{padding-left:0}.desk-collapsed .desk-link{justify-content:center;padding:10px 0;position:relative}.desk-collapsed .desk-badge{padding:0 5px;font-size:10px;position:absolute;top:4px;right:6px}.desk-collapsed .desk-foot{grid-template-columns:1fr;justify-items:center}.desk-main .dash,.desk-main .client-detail,.desk-main .progress-page{max-width:1240px;padding-top:1rem}.desk-main .review-page{padding-top:1rem}}.cv-card{background:var(--surface-1);border:1px solid var(--hairline);border-radius:12px;min-width:0;padding:18px 20px}.cv-card+.cv-card,.cv-grid+.cv-card,.cv-card+.cv-grid,.cv-grid+.cv-grid{margin-top:1.25rem}.cv-card-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px;display:flex}.cv-card-title{font-size:var(--t-card-title);letter-spacing:-.01em;color:var(--ink);margin:0;font-weight:600}.cv-card-sub{font-size:var(--t-caption);color:var(--ink-subtle);margin:2px 0 0}.cv-empty{text-align:center;font-size:var(--t-body-sm);color:var(--ink-subtle);margin:0;padding:22px 0 8px}.cv-grid{grid-template-columns:1fr;align-items:start;gap:1.25rem;display:grid}@media (width>=900px){.cv-grid-2-1{grid-template-columns:minmax(0,2fr) minmax(260px,1fr)}.cv-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width>=900px) and (width<=1180px){.cv-grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}}.btn-soft{background:var(--accent-soft);color:var(--accent-text);font-size:var(--t-body-sm);cursor:pointer;white-space:nowrap;border:0;border-radius:8px;align-items:center;gap:6px;padding:8px 12px;font-weight:600;line-height:1.2;text-decoration:none;display:inline-flex}@media (hover:hover){.btn-soft:hover{background:color-mix(in srgb, var(--accent) 28%, transparent);color:var(--ink)}}.cv-table-wrap{overflow-x:auto}.cv-table{border-collapse:collapse;width:100%;font-size:var(--t-body-sm)}.cv-table th{text-align:left;font-size:var(--t-label);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-subtle);border-bottom:1px solid var(--hairline);white-space:nowrap;padding:6px 10px 10px;font-weight:600}.cv-table td{border-bottom:1px solid var(--hairline);color:var(--ink-muted);vertical-align:middle;padding:10px}.cv-table tbody tr:last-child td{border-bottom:0}.cv-table td:first-child,.cv-table th:first-child{padding-left:0}.cv-table td:last-child,.cv-table th:last-child{padding-right:0}.cv-th-actions,.cv-td-actions{text-align:right;white-space:nowrap}.cv-td-actions .btn-soft+.btn-soft{margin-left:6px}@media (hover:hover){.cv-table tbody tr:hover td{background:var(--surface-2)}}@media (width<=639px){.cv-table,.cv-table tbody{display:block}.cv-table thead{display:none}.cv-table tr{border-bottom:1px solid var(--hairline);flex-wrap:wrap;align-items:center;gap:8px 10px;padding:12px 0;display:flex}.cv-table tbody tr:last-child{border-bottom:0}.cv-table td,.cv-table td:first-child,.cv-table td:last-child{border:0;padding:0}.cv-table td:first-child{flex:100%}.cv-table td:not(:first-child):not(.cv-td-actions){font-size:var(--t-caption)}.cv-table .cv-td-actions{gap:6px;margin-left:auto;display:flex}}.cv-who{min-width:0;color:inherit;align-items:center;gap:12px;text-decoration:none;display:inline-flex}.cv-who-stack{flex-direction:column;gap:2px;min-width:0;display:flex}.cv-who-name{color:var(--ink);white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.cv-who-meta{font-size:var(--t-caption);color:var(--ink-subtle);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.cv-tile{background:var(--accent-soft);width:36px;height:36px;color:var(--accent-text);letter-spacing:.02em;border-radius:8px;flex:none;place-items:center;font-size:13px;font-weight:700;display:grid}.cv-tile-lg{width:64px;height:64px;font-size:var(--t-title);border-radius:12px}.cv-pill{font-size:var(--t-label);letter-spacing:.02em;white-space:nowrap;border-radius:6px;align-items:center;padding:2px 9px;font-weight:600;line-height:1.5;display:inline-flex}.cv-pill-pending{background:var(--accent);color:var(--on-accent,#fff)}.cv-pill-ok{background:var(--success);color:#fff}.cv-pill-idle{background:var(--surface-3);color:var(--ink-subtle)}.cv-pill-warn{background:var(--warning);color:var(--canvas)}.cv-pill-danger{background:var(--danger);color:#fff}.cv-dash{color:var(--ink-subtle)}.cv-tabs{gap:8px;margin:0 0 1.25rem;display:flex}.cv-tabs [role=tab]{font:inherit;font-size:var(--t-body-sm);color:var(--ink-muted);background:var(--surface-1);border:1px solid var(--hairline-strong);cursor:pointer;border-radius:8px;min-height:44px;padding:8px 14px;font-weight:600;transition:background-color .15s ease-out,color .15s ease-out}.cv-tabs [role=tab][aria-selected=true]{background:var(--accent-soft);color:var(--accent-text);border-color:#0000}@media (hover:hover){.cv-tabs [role=tab]:not([aria-selected=true]):hover{background:var(--surface-2);color:var(--ink)}}.cv-search{width:100%;max-width:280px;min-height:44px}@media (width<=640px){.cv-card-head-wrap{flex-wrap:wrap}.cv-search{max-width:none}}.cv-actions{flex-wrap:wrap;gap:8px;display:flex}.logo-row{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.logo-preview{background:var(--surface-2);border:1px solid var(--hairline);width:64px;height:64px;color:var(--ink-muted);font-size:var(--t-title);border-radius:12px;flex:none;place-items:center;font-weight:700;display:grid;overflow:hidden}.logo-preview img{object-fit:cover;width:100%;height:100%;display:block}.logo-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.cv-data{margin:0}.cv-data-row{border-bottom:1px solid var(--hairline);justify-content:space-between;align-items:baseline;gap:12px;padding:9px 0;display:flex}.cv-data-row:last-child{border-bottom:0}.cv-data-row dt{font-size:var(--t-body-sm);color:var(--ink-muted)}.cv-data-row dd{font-size:var(--t-card-title);color:var(--ink);font-variant-numeric:tabular-nums;margin:0;font-weight:700}.cv-data-row dd.cv-data-alert{color:var(--accent-text)}.cv-profile{flex-wrap:wrap;align-items:center;gap:24px;display:flex}.cv-profile-who{flex:260px;align-items:center;gap:16px;min-width:0;display:flex}.cv-profile-name{font-size:var(--t-title);letter-spacing:-.015em;flex-wrap:wrap;align-items:center;gap:10px;margin:0;font-weight:650;display:flex}.cv-profile-meta{font-size:var(--t-body-sm);color:var(--ink-subtle);margin:4px 0 0}.cv-stats{flex-wrap:wrap;gap:8px;display:flex}.cv-stat{border:1px solid var(--hairline);background:var(--canvas);border-radius:8px;flex-direction:column;gap:2px;min-width:96px;padding:10px 12px;display:flex}.cv-stat-v{font-size:var(--t-card-title);color:var(--ink);font-variant-numeric:tabular-nums;font-weight:700}.cv-stat-l{font-size:var(--t-caption);color:var(--ink-subtle)}.cv-stat-alert{border-color:color-mix(in srgb, var(--accent) 45%, var(--hairline))}.cv-stat-alert .cv-stat-v{color:var(--accent-text)}.cv-profile-actions{gap:6px;display:flex}.cv-log{margin:0;padding:0;list-style:none}.cv-log-item{border-bottom:1px solid var(--hairline);align-items:center;gap:12px;padding:10px 0;display:flex}.cv-log-item:last-child{border-bottom:0}.quiet-who{flex:auto}.btn-soft:disabled{opacity:.6;cursor:default}.cv-log-thumb{background:var(--surface-2);border-radius:8px;flex:none;place-items:center;width:40px;height:40px;display:grid;overflow:hidden}.cv-log-thumb img{object-fit:cover;width:100%;height:100%}.cv-log-dot{background:var(--hairline-strong);border-radius:9999px;width:8px;height:8px}.cv-log-item-alert .cv-log-dot{background:var(--accent)}.cv-log-body{min-width:0;color:inherit;flex-direction:column;flex:auto;gap:2px;text-decoration:none;display:flex}.cv-log-title{font-size:var(--t-body-sm);color:var(--ink);white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.cv-log-meta{font-size:var(--t-caption);color:var(--ink-subtle)}@media (hover:hover){.cv-log-body:hover .cv-log-title{color:var(--accent-text)}}.cv-list{margin:0 0 12px;padding:0;list-style:none}.cv-list-row{border-bottom:1px solid var(--hairline);color:inherit;justify-content:space-between;align-items:baseline;gap:12px;padding:9px 0;text-decoration:none;display:flex}.cv-list li:last-child .cv-list-row{border-bottom:0}.cv-list-title{font-size:var(--t-body-sm);color:var(--ink);font-weight:600}.cv-list-meta{font-size:var(--t-caption);color:var(--ink-subtle);white-space:nowrap}@media (hover:hover){.cv-list-row:hover .cv-list-title{color:var(--accent-text)}}.cv-card .assign-row{margin-top:4px}.cv-card .schedule-card{background:0 0;border:0;padding:0}.cv-card .schedule-card+.schedule-card{border-top:1px solid var(--hairline);margin-top:16px;padding-top:16px}.schedule-add{margin-top:16px}.schedule-add:disabled{opacity:.6;cursor:default}.weekday-chip:disabled{opacity:.3;cursor:default}.cv-appbar{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.cv-appbar-brand{align-items:center;gap:10px;min-width:0;display:flex}.cv-appbar-brand .wordmark{justify-content:flex-start;margin-bottom:0}.cv-appbar-actions{flex:none;gap:.25rem;display:flex}.cv-card-actions{flex:none;gap:6px;display:flex}.cv-app{--surface-1:#171922;--surface-2:#1e2130;--surface-3:#262a3a;--hairline:#262a38;--hairline-strong:#343a4d;--r-card:20px;padding-bottom:calc(5.5rem + env(safe-area-inset-bottom))}.cv-app .cv-card,.cv-app .cv-hero,.cv-app .cv-nudge,.cv-app .cv-rows{border-radius:var(--r-card)}.cv-brand-mark{background:var(--surface-1);border:1px solid var(--hairline);width:40px;height:40px;color:var(--ink);letter-spacing:.02em;border-radius:12px;flex:none;place-items:center;font-size:13px;font-weight:800;display:grid;overflow:hidden}.cv-brand-mark img{object-fit:cover;width:100%;height:100%;display:block}.cv-greet{flex-direction:column;min-width:0;display:flex}.cv-greet-eyebrow{font-size:var(--t-body-sm);color:var(--ink-subtle)}.cv-greet-name{font-size:var(--t-card-title);color:var(--ink);letter-spacing:-.01em;font-weight:650}.cv-app .client-nav-action{color:var(--ink-muted)}.cv-nudge{border:1px solid color-mix(in srgb, var(--accent) 45%, var(--hairline));background:color-mix(in srgb, var(--accent) 6%, var(--surface-1));margin-bottom:1rem;padding:18px 18px 16px}.cv-nudge-title{font-size:var(--t-card-title);color:var(--ink);margin:0;font-weight:600}.cv-nudge-text{font-size:var(--t-body-sm);color:var(--ink-muted);margin:6px 0 14px}.cv-nudge-btn{min-height:40px}.cv-hero{background:var(--surface-1);border:1px solid color-mix(in srgb, var(--accent) 40%, var(--hairline));color:inherit;align-items:center;gap:14px;margin-bottom:1.5rem;padding:18px 18px 18px 20px;text-decoration:none;display:flex}.cv-hero-body{flex-direction:column;flex:auto;gap:4px;min-width:0;display:flex}.cv-hero-pill{text-transform:uppercase;letter-spacing:.06em;border-radius:9999px;align-self:flex-start;margin-bottom:4px;font-size:11px}.cv-hero-title{font-size:var(--t-title);letter-spacing:-.015em;color:var(--ink);font-weight:700;line-height:1.15}.cv-hero-meta{font-size:var(--t-body-sm);color:var(--ink-muted)}.cv-play{background:var(--accent);width:56px;height:56px;color:var(--on-accent,#fff);border-radius:9999px;flex:none;place-items:center;padding-left:3px;display:grid}@media (hover:hover){.cv-hero:hover{background:var(--surface-2)}}.cv-section-head{justify-content:space-between;align-items:baseline;gap:12px;margin:0 2px .6rem;display:flex}.cv-section-label{font-size:var(--t-label);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-subtle);font-weight:700}.cv-section-count{font-size:var(--t-caption);color:var(--ink-subtle);font-variant-numeric:tabular-nums}.cv-textlink{font-size:var(--t-body-sm);color:var(--accent-text);font-weight:600;text-decoration:none}.cv-rows{background:var(--surface-1);border:1px solid var(--hairline);margin:0 0 1.5rem;padding:0;list-style:none;overflow:hidden}.cv-row-wrap{align-items:stretch;display:flex}.cv-row-wrap+.cv-row-wrap{border-top:1px solid var(--hairline)}.cv-row{min-width:0;min-height:68px;color:inherit;text-align:left;font:inherit;cursor:pointer;background:0 0;border:0;flex:auto;align-items:center;gap:14px;padding:14px 16px;text-decoration:none;display:flex}@media (hover:hover){.cv-row:hover{background:var(--surface-2)}}.cv-row-body{flex-direction:column;flex:auto;gap:2px;min-width:0;display:flex}.cv-row-title{font-size:var(--t-body);color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.cv-row-meta{font-size:var(--t-body-sm);color:var(--ink-subtle);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.cv-chev{color:var(--ink-subtle);flex:none;font-size:22px;line-height:1}.cv-row-edit{font-size:var(--t-body-sm);color:var(--ink-subtle);border-left:1px solid var(--hairline);place-items:center;padding:0 16px;text-decoration:none;display:grid}@media (hover:hover){.cv-row-edit:hover{color:var(--ink);background:var(--surface-2)}}.cv-letter{background:var(--surface-3);width:44px;height:44px;color:var(--accent-text);border-radius:12px;flex:none;place-items:center;font-size:16px;font-weight:700;display:grid}.cv-icon-tile{background:var(--accent-soft);width:44px;height:44px;color:var(--accent-text);border-radius:12px;flex:none;place-items:center;display:grid}.cv-icon-tile-ok{background:color-mix(in srgb, var(--success) 18%, transparent);color:var(--success-text)}.cv-icon-tile-quiet{background:var(--surface-3);color:var(--ink-subtle)}.cv-menu-ico{width:24px;color:var(--accent-text);flex:none;place-items:center;display:grid}.cv-menu-ico-quiet{color:var(--ink-subtle)}.cv-rows-menu .cv-row{min-height:60px}.cv-today{margin-bottom:1.5rem;padding:0;overflow:hidden}.cv-today-head{border-bottom:1px solid var(--hairline);justify-content:space-between;align-items:baseline;gap:12px;padding:14px 18px;display:flex}.cv-today-date{font-size:var(--t-body-sm);color:var(--ink-subtle)}.cv-today-row{text-align:left;width:100%;font:inherit;color:inherit;background:0 0;border:0;align-items:center;gap:14px;padding:14px 18px;display:flex}.cv-today-row+.cv-today-row{border-top:1px solid var(--hairline)}.cv-today-row-btn{cursor:pointer}.cv-today-row-btn:disabled{opacity:.6;cursor:default}@media (hover:hover){.cv-today-row-btn:hover{background:var(--surface-2)}}.cv-tabbar{z-index:20;padding:8px 8px calc(8px + env(safe-area-inset-bottom));background:color-mix(in srgb, var(--canvas) 92%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--hairline);justify-content:space-around;align-items:stretch;display:flex;position:fixed;bottom:0;left:0;right:0}.cv-tab{color:var(--ink-subtle);font-size:var(--t-caption);border-radius:10px;flex-direction:column;flex:1 1 0;align-items:center;gap:4px;padding:6px 4px;font-weight:500;text-decoration:none;display:flex}.cv-tab svg{width:24px;height:24px}.cv-tab.active{color:var(--accent-text)}@media (width>=640px){.cv-tabbar{border:1px solid var(--hairline);border-bottom:0;border-radius:16px 16px 0 0;max-width:560px;margin:0 auto;left:0;right:0}}.cv-consistency{align-items:baseline;gap:8px;margin:-.25rem 2px 1rem;display:flex}.cv-consistency-n{font-size:var(--t-title);color:var(--ink);font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-weight:700}.cv-consistency-n small{font-size:var(--t-body);color:var(--ink-subtle);font-weight:500}.cv-consistency-l{font-size:var(--t-body-sm);color:var(--ink-subtle);flex:auto}.cv-consistency-streak{border-radius:9999px}.cv-fbcard{color:inherit;margin-bottom:1.5rem;padding:16px 18px;text-decoration:none;display:block}@media (hover:hover){.cv-fbcard:hover{background:var(--surface-2)}}.cv-fbcard-head{align-items:center;gap:14px;display:flex}.cv-fbcard-quote{-webkit-line-clamp:3;border-left:2px solid var(--hairline-strong);font-size:var(--t-body-sm);color:var(--ink-muted);-webkit-box-orient:vertical;margin:12px 0 0;padding-left:12px;line-height:1.5;display:-webkit-box;overflow:hidden}.cv-fbcard-chips{flex-wrap:wrap;gap:6px;margin-top:12px;display:flex}.cv-fbcard-chips:empty{display:none}.cv-chip{font-size:var(--t-caption);background:var(--surface-3);color:var(--ink-muted);border-radius:9999px;padding:3px 9px}.cv-showbar{background:var(--surface-1);border:1px solid var(--hairline);text-align:left;width:100%;font:inherit;color:inherit;border-radius:16px;align-items:center;gap:14px;margin:-.25rem 0 1rem;padding:12px 16px;display:flex}.cv-showbar:disabled{cursor:default}.cv-showbar:not(:disabled){cursor:pointer}@media (hover:hover){.cv-showbar:not(:disabled):hover{background:var(--surface-2)}}.cv-showbar-n{font-size:var(--t-card-title);color:var(--accent-text);font-variant-numeric:tabular-nums;letter-spacing:-.01em;white-space:nowrap;flex:none;font-weight:700}.cv-showbar-set{cursor:pointer;font:inherit;font-size:var(--t-body-sm);background:0 0;border:0;margin:-.25rem 2px 1rem;padding:0;font-weight:600;display:inline-block}.cv-show-edit{margin-bottom:1rem}.show-form-fields{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:10px;display:grid}@media (width<=480px){.show-form-fields{grid-template-columns:1fr}}.show-form-actions{margin:.75rem 0 0}.cv-profile-edit{border-top:1px solid var(--hairline);flex:1 0 100%;padding-top:14px}.division-picker{grid-template-columns:1fr;gap:14px;display:grid}@media (width>=720px){.division-picker{grid-template-columns:repeat(2,minmax(0,1fr))}}.division-row{background:var(--surface-1);border:1px solid var(--hairline);border-radius:12px;flex-direction:column;gap:10px;min-width:0;padding:14px 16px;display:flex}.division-row-field{margin:0}.division-row-foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.division-row-meta{font-size:var(--t-body-sm);color:var(--ink-subtle);flex-wrap:wrap;align-items:center;gap:8px;margin:0;display:flex}.division-row-cta{flex:none}.pose-suggest{flex:14rem;min-width:0;display:block;position:relative}.pose-suggest .pose-name-input{width:100%}.pose-suggest-list{z-index:20;background:var(--surface-3);border:1px solid var(--hairline-strong);border-radius:8px;max-height:15rem;margin:0;padding:4px;list-style:none;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto}.pose-suggest-item{font-size:var(--t-body-sm);color:var(--ink-muted);cursor:pointer;white-space:nowrap;text-overflow:ellipsis;border-radius:6px;padding:8px 10px;overflow:hidden}.pose-suggest-item-on{background:var(--accent-soft);color:var(--accent-text)}.desk-keys{font-size:var(--t-caption);color:var(--ink-subtle);flex-wrap:wrap;gap:1rem;margin:.5rem 0 0;display:none}@media (hover:hover) and (width>=900px){.desk-keys{display:flex}}.desk-keys kbd{font:inherit;font-size:var(--t-label);background:var(--surface-3);border:1px solid var(--hairline-strong);color:var(--ink-muted);border-radius:4px;margin-right:4px;padding:0 5px}.pose-ref{min-width:0;margin:0}.pose-ref-frame{aspect-ratio:3/4;background:var(--surface-2);border:1px solid var(--hairline);border-radius:12px;width:100%;display:block;position:relative;overflow:hidden}.pose-ref-svg,.pose-ref-media,.pose-ref-sprite,.pose-ref-unknown{object-fit:cover;width:100%;height:100%;display:block}.pose-ref-body{fill:none;stroke:var(--ink-subtle);stroke-width:5px;stroke-linecap:round;stroke-linejoin:round;transform-origin:50px 90px;animation:4s ease-in-out infinite pose-ref-breathe}.pose-ref-body circle{fill:var(--ink-subtle);stroke:none}@keyframes pose-ref-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.025)}}.pose-ref-xs{flex:none;width:26px}.pose-ref-xs .pose-ref-frame{border-radius:6px}.pose-ref-sm{flex:none;width:44px}.pose-ref-sm .pose-ref-frame{border-radius:8px}.pose-ref-md{width:100%}.pose-ref-cap{font-size:var(--t-caption);color:var(--ink-subtle);white-space:nowrap;text-overflow:ellipsis;margin-top:6px;overflow:hidden}@media (hover:hover){.call-sheet-item:hover .pose-ref-frame,.pose-row:hover .pose-ref-frame{border-color:var(--hairline-strong)}}@media (prefers-reduced-motion:reduce){.pose-ref-body{animation:none;transform:none}}.pose-ref[data-static=true] .pose-ref-body{animation:none;transform:none}.still-pair{align-items:flex-start;gap:6px;display:flex}.still-pair .pose-ref{width:2.6rem}.still-pair .still-btn,.still-pair>img{flex:auto;min-width:0}.stills-strip figure:has(.still-pair){width:10.4rem}.keep-video-btn{background:var(--surface-2);border-radius:10px;margin-top:10px;padding:10px 12px}@media (hover:hover){.keep-video-btn:hover{background:var(--surface-3)}}.keep-video-btn+.auth-error{margin-top:6px}.help-page{max-width:760px}.help-tracks{gap:8px;margin:1.5rem 0 1.25rem;display:flex}.help-track-btn{font:inherit;font-size:var(--t-body-sm);color:var(--ink-muted);background:var(--surface-1);border:1px solid var(--hairline-strong);cursor:pointer;border-radius:8px;flex:1;min-height:44px;padding:10px 14px;font-weight:600;transition:background-color .15s ease-out,color .15s ease-out}.help-track-btn[aria-pressed=true]{background:var(--accent-soft);color:var(--accent-text);border-color:#0000}@media (hover:hover){.help-track-btn:not([aria-pressed=true]):hover{background:var(--surface-2);color:var(--ink)}}.help-search{margin-bottom:1.75rem}.help-search-label{margin-bottom:6px;display:block}.help-search-input{width:100%;font:inherit;font-size:var(--t-body);color:var(--ink);background:var(--surface-1);border:1px solid var(--hairline-strong);border-radius:8px;min-height:44px;padding:10px 12px}.help-search-input:focus{outline:2px solid var(--accent);outline-offset:-1px;opacity:.95}.help-lede{font-size:var(--t-body-sm);color:var(--ink-subtle);max-width:64ch;margin:-.25rem 0 1rem}.help-accordion{flex-direction:column;gap:8px;display:flex}.help-section{background:var(--surface-1);border:1px solid var(--hairline);border-radius:12px;overflow:hidden}.help-section-head{margin:0}.help-section-btn{width:100%;font:inherit;text-align:left;color:var(--ink);cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;gap:12px;min-height:44px;padding:14px 16px;display:flex}@media (hover:hover){.help-section-btn:hover{background:var(--surface-2)}}.help-section-title{font-size:var(--t-card-title);letter-spacing:-.01em;font-weight:600}.help-section-chev{text-align:center;width:20px;color:var(--ink-subtle);flex:none;font-size:16px;font-weight:600}.help-section-body{border-top:1px solid var(--hairline);padding:14px 16px 16px}@media (prefers-reduced-motion:no-preference){.help-section-body{animation:.15s ease-out help-reveal}}@keyframes help-reveal{0%{opacity:0}to{opacity:1}}.help-p{color:var(--ink-muted);margin:0 0 .85rem}.help-p:last-child{margin-bottom:0}.help-list{margin:.5rem 0 .85rem;padding-left:20px}.help-list li{color:var(--ink-muted);margin-bottom:7px}.help-list:last-child{margin-bottom:0}.ui-label{font-size:var(--t-body-sm);color:var(--ink);background:var(--surface-3);border:1px solid var(--hairline-strong);white-space:nowrap;border-radius:6px;padding:1px 7px;font-weight:600;display:inline-block}.help-note{border-left:2px solid var(--hairline-strong);font-size:var(--t-body-sm);color:var(--ink-subtle);margin-top:.75rem;padding:2px 0 2px 14px}.help-note-warn{border-color:var(--warning);color:var(--warning-text)}.help-note-warn .ui-label{color:var(--ink)}.help-gotchas{border:1px solid color-mix(in srgb, var(--warning) 35%, var(--hairline));border-radius:14px;overflow:hidden}.help-gotcha{border-top:1px solid var(--hairline);grid-template-columns:26px minmax(0,1fr);gap:14px;padding:16px 20px;display:grid}.help-gotcha:first-child{border-top:0}.help-gotcha-n{color:var(--warning-text);font-weight:700;font-size:var(--t-body-sm);text-align:center}.help-gotcha-title{font-size:var(--t-body);color:var(--ink);margin:0 0 5px;font-weight:650}.help-gotcha-text{font-size:var(--t-body-sm);color:var(--ink-muted);margin:0}.help-tbl-wrap{margin-top:.25rem}.help-table{border-collapse:collapse;width:100%;font-size:var(--t-body-sm)}.help-table th{text-align:left;font-size:var(--t-label);letter-spacing:.07em;text-transform:uppercase;color:var(--ink-subtle);border-bottom:1px solid var(--hairline);padding:0 12px 10px 0;font-weight:700}.help-table td{border-bottom:1px solid var(--hairline);color:var(--ink-muted);vertical-align:top;padding:11px 12px 11px 0}.help-table td:first-child{color:var(--ink);white-space:nowrap;font-weight:600}.help-table tr:last-child td{border-bottom:0}.help-cross-track{font-size:var(--t-body-sm);color:var(--ink-subtle);text-align:center;margin:1rem 0 0}.help-track-switch{font:inherit;color:var(--accent-text);cursor:pointer;background:0 0;border:0;padding:0;font-weight:600;text-decoration:underline}@media (hover:hover){.help-track-switch:hover{opacity:.8}}@media (width<=480px){.help-tracks{flex-direction:column}}.stage-cam-rear{transform:none}.native-camera,.native-camera body,.native-camera #root,.native-camera .stage{background:0 0!important}.native-camera .stage-cam{visibility:hidden}.checkin-pick-angles{flex-direction:column;gap:24px;margin-bottom:24px;display:flex}.checkin-pick-angle .section-title{margin-bottom:12px}.checkin-viewer{z-index:50;padding:max(16px, env(safe-area-inset-top)) 16px max(16px, env(safe-area-inset-bottom));background:#000000f0;flex-direction:column;justify-content:center;align-items:center;gap:16px;display:flex;position:fixed;inset:0}.checkin-viewer img{object-fit:contain;border-radius:12px;max-width:100%;max-height:calc(100% - 72px)}.checkin-viewer-bar{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.checkin-shots{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;max-width:560px;display:grid}.checkin-shot{min-width:0;margin:0}.checkin-shot-btn{cursor:pointer;outline-offset:2px;background:0 0;border:0;border-radius:16px;outline:2px solid #0000;width:100%;padding:0;transition:outline-color .15s ease-out;display:block}.checkin-shot-btn img{aspect-ratio:3/4;object-fit:cover;background:#000;border-radius:16px;width:100%;display:block}.checkin-shot-btn[aria-checked=true],.checkin-shot-btn:focus-visible{outline-color:var(--accent)}.checkin-shot figcaption{font-size:var(--t-caption);color:var(--ink-subtle);margin-top:6px}.checkin-shot-btn[aria-checked=true]+figcaption{color:var(--ink);font-weight:600}.checkin-submit{max-width:560px}.checkin-submit .review-rerecord{width:100%}.checkin-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px;display:grid}.checkin-photo{min-width:0;margin:0}.checkin-photo img,.checkin-photo-missing{aspect-ratio:3/4;object-fit:contain;background:#000;border-radius:16px;width:100%;display:block}.checkin-photo-frame{position:relative}.checkin-photo-missing{text-align:center;background:var(--surface-1);border:1px solid var(--hairline);font-size:var(--t-caption);color:var(--ink-subtle);place-items:center;padding:12px;display:grid}.checkin-photo figcaption{font-size:var(--t-caption);color:var(--ink-subtle);margin-top:6px}.progress-filter{gap:8px;max-width:22rem;margin:0 0 2rem;display:flex}.progress-filter-btn{font:inherit;font-size:var(--t-body-sm);color:var(--ink-muted);background:var(--surface-1);border:1px solid var(--hairline-strong);cursor:pointer;border-radius:8px;flex:1;min-height:44px;padding:10px 14px;font-weight:600;transition:background-color .15s ease-out,color .15s ease-out}.progress-filter-btn[aria-pressed=true]{background:var(--accent-soft);color:var(--accent-text);border-color:#0000}@media (hover:hover){.progress-filter-btn:not([aria-pressed=true]):hover{background:var(--surface-2);color:var(--ink)}}.zoom-pane{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;position:relative}.zoom-pane img{-webkit-user-drag:none}.zoom-layer{transform-origin:0 0;transition:transform .15s ease-out;display:block}.zoom-layer-live{transition:none}.pose-overlay-media .zoom-layer{position:absolute;inset:0}@media (prefers-reduced-motion:reduce){.zoom-layer{transition:none}}.zoom-hint{text-align:center;margin:-8px 0 0}.zoom-reset{font:inherit;color:var(--accent-text);cursor:pointer;background:0 0;border:0;padding:0;font-weight:600;text-decoration:underline}.still-compare-open{text-decoration:none}@media (hover:hover){.still-compare-open:hover{color:var(--ink);text-decoration:underline}}.overlay-opacity{align-items:center;gap:10px;display:flex}.overlay-opacity input{min-width:0;accent-color:var(--accent);flex:1;min-height:32px}.overlay-opacity-value{font-size:var(--t-caption);color:var(--ink-muted);font-variant-numeric:tabular-nums;text-align:right;min-width:3.5ch}.checkin-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.checkin-head-name{font-size:var(--t-card-title);letter-spacing:-.01em;color:var(--ink);margin:0;font-weight:600}.checkin-head-actions{flex-wrap:wrap;gap:8px;display:flex}.checkin-still{aspect-ratio:3/4;max-height:70vh}.checkin-angles{grid-template-columns:repeat(auto-fill,minmax(6.5rem,1fr));gap:12px;margin-top:12px;display:grid}.checkin-angle{cursor:pointer;font:inherit;text-align:left;color:inherit;background:0 0;border:0;flex-direction:column;gap:6px;padding:0;display:flex}.checkin-angle-media{border:1px solid var(--hairline);background:#000;border-radius:12px;transition:border-color .15s ease-out;display:block;overflow:hidden}.checkin-angle-media img{aspect-ratio:3/4;object-fit:cover;object-position:top center;width:100%;display:block}.checkin-angle-media .compare-missing{border:0;border-radius:0}@media (hover:hover){.checkin-angle:hover .checkin-angle-media{border-color:var(--hairline-strong)}}.checkin-angle-active .checkin-angle-media{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.checkin-angle-name{font-size:var(--t-caption);color:var(--ink-subtle);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.checkin-angle-active .checkin-angle-name{color:var(--ink);font-weight:600}.checkin-first{margin:10px 0 0}.pay-plans{margin:1rem 0}.pay-plans .cv-list-row{align-items:center}.pay-plan-who{flex-direction:column;gap:2px;min-width:0;display:flex}.pay-plan-end{flex:none;align-items:center;gap:8px;display:flex}.pay-plan-price{font-size:var(--t-body-sm);color:var(--ink);font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}.pay-plan-form{grid-template-columns:1fr 1fr;align-items:end;gap:12px;margin-top:1rem;display:grid}.pay-plan-name,.pay-plan-err,.pay-plan-submit{grid-column:1/-1}@media (width>=720px){.pay-plan-form{grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) auto}.pay-plan-name,.pay-plan-submit{grid-column:auto}}.pay-link{margin-top:12px}.pay-link .invite-code{overflow-wrap:anywhere;min-width:0}.cv-card .cv-actions+.field-hint,.cv-card .pay-link+.field-hint{margin-top:10px}.pay-client-actions{margin-top:14px}.coach-code-inline{font-family:var(--font-mono,ui-monospace, monospace);letter-spacing:.08em;white-space:nowrap}:root{--canvas:#0b0b0d;--surface-1:#161619;--surface-2:#1d1d21;--surface-3:#26262b;--hairline:#26262b;--hairline-strong:#34343a;--ink:#f4f1ec;--ink-muted:#c9c5be;--ink-subtle:#a6a29b;--accent:#e5483b;--accent-soft:color-mix(in srgb, var(--accent) 16%, transparent);--accent-line:color-mix(in srgb, var(--accent) 40%, transparent);--accent-glow:color-mix(in srgb, var(--accent) 22%, transparent);--font-body:"Manrope Variable", system-ui, -apple-system, "Segoe UI", sans-serif;--font-display:"Archivo Variable", "Manrope Variable", system-ui, sans-serif;--t-display:34px;--t-title:28px;--t-card-title:18px;--r-sm:10px;--r-md:14px;--r-lg:18px;--r-xl:22px;font-family:var(--font-body)}body{font-family:var(--font-body)}input,select,textarea,button{font-family:inherit}body:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(closest-side, var(--accent-glow), transparent);width:760px;height:520px;position:fixed;top:-220px;left:50%;transform:translate(-50%)}.native-camera body:before{display:none}h1,.dash-title,.auth-title,.stat-number,.invite-coach-name,.coach-code,.cv-card-title,.wordmark-text,.more-heading{font-family:var(--font-display)}.dash-title{letter-spacing:-.025em;font-weight:900;font-size:var(--t-display);line-height:1.05}.auth-title{letter-spacing:-.02em;font-weight:900;font-size:var(--t-title);line-height:1.05}.cv-card-title{letter-spacing:-.01em;font-weight:800}.stat-number{letter-spacing:-.02em;font-size:38px;font-weight:900;line-height:1}.wordmark-text{font-weight:800}.field-label,.stat-label{letter-spacing:.12em;font-weight:700}.btn-primary{border-radius:var(--r-md);min-height:52px;padding:12px 20px;font-size:15px;font-weight:700}.btn-primary-compact{border-radius:12px;min-height:44px;padding:10px 18px}.auth-link-btn{border-radius:9999px;font-weight:700}.field-input{border-radius:var(--r-md);border-color:var(--hairline-strong);background:var(--surface-1);min-height:52px;padding:12px 16px;font-size:16px}.auth-card{border-radius:var(--r-xl);background:var(--surface-1);padding:2rem 1.5rem}.cv-card,.stat-tile,.invite-panel{border-radius:var(--r-lg)}.role-toggle-btn{border-radius:var(--r-md)}.role-toggle-btn[aria-checked=true]{border-color:var(--accent);background:var(--accent-soft)}.ob{flex-direction:column;max-width:440px;min-height:100dvh;margin:0 auto;padding:1.25rem 1.5rem 2rem;display:flex;overflow:hidden}.ob-top{justify-content:space-between;align-items:center;min-height:44px;display:flex}.ob-brand{font-family:var(--font-display);align-items:center;gap:10px;font-size:16px;font-weight:800;display:flex}.ob-logo{border:1px solid var(--hairline);border-radius:10px;width:36px;height:36px}.ob-skip{min-height:44px;color:var(--ink-subtle);font:inherit;cursor:pointer;background:0 0;border:0;padding:0 12px;font-weight:700}.ob-art{flex:auto;justify-content:center;align-items:center;min-height:340px;max-height:440px;display:flex}.ob-copy{flex-direction:column;gap:10px;min-height:130px;display:flex}.ob-title{font-family:var(--font-display);letter-spacing:-.02em;margin:0;font-size:36px;font-weight:900;line-height:1.02}.ob-body{color:var(--ink-muted);margin:0;font-size:16px;line-height:1.5}.ob-foot{flex-direction:column;gap:14px;padding-top:1rem;display:flex}.ob-dots{justify-content:center;gap:6px;display:flex}.ob-dot{background:var(--hairline-strong);cursor:pointer;border:0;border-radius:4px;width:8px;height:8px;padding:0;transition:width .3s,background-color .3s;position:relative}.ob-dot:after{content:"";position:absolute;inset:-14px -6px}.ob-dot[aria-selected=true]{background:var(--accent);width:28px}.ob-cta{margin-top:0}.ob-login,.q-login{text-align:center;font-size:var(--t-body-sm);color:var(--ink-subtle);margin:0}.ob-login a,.q-login a{color:var(--ink);font-weight:700;text-decoration:none}@keyframes ob-draw{0%{stroke-dashoffset:1px}to{stroke-dashoffset:0}}@keyframes ob-fill{0%,55%{fill-opacity:0}to{fill-opacity:.14}}@keyframes ob-rise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@keyframes ob-tilt{0%{transform:rotate(-9deg)}55%{transform:rotate(2deg)}70%,to{transform:rotate(0)}}@keyframes ob-line{0%,60%{background:var(--warning)}75%,to{background:var(--accent)}}@keyframes ob-pop{0%,70%{opacity:0;transform:scale(.4)}85%{opacity:1;transform:scale(1.15)}to{opacity:1;transform:none}}@keyframes ob-wave{0%,to{transform:scaleY(.35)}50%{transform:scaleY(1)}}@keyframes ob-grow{0%{transform:scaleY(0)}to{transform:scaleY(1)}}@keyframes ob-tick{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:none}}.ob-rise{opacity:0;animation:.7s cubic-bezier(.2,.8,.2,1) forwards ob-rise}.ob-d1{animation-delay:.15s}.ob-d2{animation-delay:.35s}.ob-d3{animation-delay:.55s}.ob-figure{width:auto;max-width:100%;height:360px}.ob-draw{stroke:var(--accent);stroke-width:3px;stroke-linejoin:round;fill:var(--accent);stroke-dasharray:1;stroke-dashoffset:1px;animation:2.2s cubic-bezier(.6,0,.2,1) .2s forwards ob-draw,2.8s ease-out forwards ob-fill}.ob-level{justify-content:center;align-items:center;width:300px;height:380px;display:flex;position:relative}.ob-phone{border:6px solid var(--surface-3);transform-origin:50% 90%;background:radial-gradient(90% 70% at 50% 40%,#3a3632,#141312 80%);border-radius:34px;width:190px;height:360px;animation:2.4s cubic-bezier(.3,.7,.3,1) .3s both ob-tilt;position:relative;overflow:hidden}.ob-phone-figure{width:100px;height:270px;position:absolute;top:40px;left:39px}.ob-phone-figure path{stroke:var(--ink);stroke-width:1.6px;stroke-dasharray:5 4;opacity:.7}.ob-phone-line{border-radius:2px;height:3px;animation:2.4s .3s both ob-line;position:absolute;top:176px;left:14px;right:14px}.ob-level-badge{color:#8fe3b3;opacity:0;background:#12301f;border:1px solid #2f8f5b;border-radius:20px;align-items:center;gap:6px;height:40px;padding:0 14px;font-size:14px;font-weight:800;animation:2.4s .3s forwards ob-pop;display:flex;position:absolute;top:40px;right:22px}.ob-feedback{flex-direction:column;gap:14px;width:100%;max-width:330px;display:flex}.ob-video{border-radius:var(--r-xl);background:radial-gradient(80% 80% at 50% 40%,#3a3632,#141312 80%);justify-content:center;align-items:center;height:190px;display:flex;position:relative}.ob-play{background:#f4f1eceb;border-radius:28px;justify-content:center;align-items:center;width:56px;height:56px;display:flex}.ob-video-rail{grid-template-columns:2fr 1.5fr 2.2fr 1.5fr 2fr;gap:3px;display:grid;position:absolute;bottom:12px;left:14px;right:14px}.ob-video-rail i{background:#f4f1ec66;border-radius:3px;height:6px}.ob-video-rail i.on{background:var(--accent)}.ob-voice{border-radius:var(--r-lg);background:var(--accent-soft);border:1px solid var(--accent-line);align-items:center;gap:12px;padding:14px;display:flex}.ob-voice-btn{background:var(--accent);height:44px;color:var(--on-accent,#fff);border-radius:22px;flex:0 0 44px;justify-content:center;align-items:center;display:flex}.ob-wave{flex:1;align-items:center;gap:4px;height:34px;display:flex}.ob-wave i{background:var(--accent);transform-origin:50%;border-radius:2px;width:4px;animation:1.1s ease-in-out infinite ob-wave}.ob-voice-time{color:var(--ink-muted);font-size:13px;font-weight:700}.ob-note{background:var(--surface-2);border:1px solid var(--hairline-strong);border-radius:16px 16px 4px;align-self:flex-end;max-width:260px;padding:12px 14px;font-size:14px;line-height:1.45}.ob-note b{color:var(--accent-text)}.ob-show{flex-direction:column;align-items:center;gap:18px;width:100%;max-width:330px;display:flex}.ob-count{align-items:flex-end;gap:10px;display:flex}.ob-count-num{font-family:var(--font-display);color:var(--accent-text);font-size:120px;font-weight:900;line-height:.82}.ob-count-label{font-family:var(--font-display);padding-bottom:8px;font-size:24px;font-weight:800;line-height:1}.ob-bars{grid-template-columns:repeat(8,minmax(0,1fr));align-items:end;gap:8px;width:100%;height:110px;display:grid}.ob-bars i{background:var(--surface-3);transform-origin:50% 100%;border-radius:6px 6px 2px 2px;animation:.8s cubic-bezier(.2,.8,.2,1) forwards ob-grow;transform:scaleY(0)}.ob-bars i.on{background:var(--accent)}.ob-streak{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;width:100%;display:grid}.ob-streak i{background:var(--surface-3);opacity:0;border-radius:9px;height:30px;animation:.45s cubic-bezier(.2,.8,.2,1) forwards ob-tick}.ob-streak i.on{background:var(--accent)}.ob-streak i.today{border:2px dashed var(--accent);background:0 0}.q{flex-direction:column;gap:1.25rem;max-width:460px;min-height:100dvh;margin:0 auto;padding:1.25rem 1.25rem 2rem;display:flex}.q-top{align-items:center;gap:14px;display:flex}.q-back{border:1px solid var(--hairline-strong);width:44px;height:44px;color:var(--ink);cursor:pointer;background:0 0;border-radius:22px;flex:0 0 44px;justify-content:center;align-items:center;display:flex}.q-bars{flex:1;gap:6px;display:flex}.q-bars span{background:var(--surface-3);border-radius:3px;flex:1;height:5px;transition:background-color .3s}.q-bars span.on{background:var(--accent)}.q-count{text-align:right;min-width:34px;color:var(--ink-subtle);font-size:13px;font-weight:700}@keyframes q-in{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:none}}.q-step{flex-direction:column;gap:12px;animation:.45s cubic-bezier(.2,.8,.2,1) both q-in;display:flex}.q-title{font-family:var(--font-display);letter-spacing:-.02em;margin:.5rem 0 0;font-size:32px;font-weight:900;line-height:1.05}.q-sub{color:var(--ink-subtle);margin:0 0 .25rem;font-size:15px;line-height:1.5}.q-sub strong{color:var(--ink)}.q-options{flex-direction:column;gap:10px;display:flex}.q-opt{border-radius:var(--r-lg);border:1px solid var(--hairline-strong);background:var(--surface-1);min-height:76px;color:var(--ink);font:inherit;text-align:left;cursor:pointer;align-items:center;gap:14px;padding:16px;transition:border-color .15s,transform .15s;display:flex}@media (hover:hover){.q-opt:hover{border-color:var(--accent-line)}}.q-opt:active{transform:scale(.98)}.q-opt-icon{border-radius:var(--r-md);background:var(--accent-soft);height:48px;color:var(--accent-text);flex:0 0 48px;justify-content:center;align-items:center;display:flex}.q-opt-big{min-width:64px;font-family:var(--font-display);color:var(--accent-text);flex:none;font-size:24px;font-weight:900}.q-opt-text{flex-direction:column;flex:1;gap:3px;display:flex}.q-opt-title{font-size:16px;font-weight:800}.q-opt-sub{color:var(--ink-subtle);font-size:13px;line-height:1.4}.q-opt-chev{color:var(--ink-subtle);flex:none}.q-code-input{text-align:center;min-height:64px;font-family:var(--font-display);letter-spacing:.2em;text-transform:uppercase;border-width:2px;font-size:28px;font-weight:900}.q-found,.q-summary{border-radius:var(--r-lg);background:var(--accent-soft);border:1px solid var(--accent-line);align-items:center;gap:12px;padding:14px;display:flex}.q-found-tile{background:var(--accent);height:44px;color:var(--on-accent,#fff);font-family:var(--font-display);border-radius:12px;flex:0 0 44px;justify-content:center;align-items:center;font-size:18px;font-weight:900;display:flex}.q-found-text,.q-summary-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.q-found-text span,.q-summary-text span{color:var(--ink-muted);font-size:12px}.q-found-text strong,.q-summary-text strong{overflow-wrap:anywhere;font-size:16px;font-weight:800}.q-found-check{color:#8fe3b3;flex:none}.q-summary-icon{background:var(--accent);height:38px;color:var(--on-accent,#fff);border-radius:11px;flex:0 0 38px;justify-content:center;align-items:center;display:flex}.q-link{min-height:44px;color:var(--accent-text);font:inherit;cursor:pointer;background:0 0;border:0;align-self:flex-start;padding:0;font-size:14px;font-weight:700}.q-summary .q-link{color:var(--ink);align-self:center;text-decoration:underline}.q-panel{border-radius:var(--r-lg);background:var(--surface-1);border:1px solid var(--hairline);color:var(--ink-subtle);padding:16px;font-size:14px;line-height:1.5}.q-panel strong{color:var(--ink)}.q-show{flex-direction:column;gap:12px;display:flex}.q-swatches{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.q-swatch{border-radius:var(--r-md);background:var(--sw);cursor:pointer;border:3px solid #0000;height:56px}.q-swatch[aria-pressed=true]{border-color:var(--ink);box-shadow:0 0 0 2px var(--sw)}.q-preview{border-radius:var(--r-md);background:var(--surface-1);border:1px solid var(--hairline);align-items:center;gap:12px;padding:12px 14px;display:flex}.q-preview-name{overflow-wrap:anywhere;flex:1;font-size:15px;font-weight:700}.q-preview-btn{background:var(--accent);height:34px;color:var(--on-accent,#fff);border-radius:10px;align-items:center;padding:0 12px;font-size:13px;font-weight:700;display:flex}.q-divisions{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.q-division{border-radius:var(--r-md);border:1px solid var(--hairline-strong);background:var(--surface-1);height:138px;color:var(--ink);font:inherit;cursor:pointer;flex-direction:column;justify-content:space-between;align-items:center;padding:10px 4px 8px;display:flex}@media (hover:hover){.q-division:hover{border-color:var(--accent-line)}}.q-division svg{width:38px;height:92px}.q-division path{fill:var(--accent-soft);stroke:var(--accent-text);stroke-width:1.4px}.q-division span{text-align:center;font-size:11px;font-weight:700;line-height:1.15}.q-foot{margin-top:auto}.q-foot .btn-primary{width:100%}.q .auth-card{background:0 0;border:0;padding:1.25rem 0 0}.q .auth-title{font-size:26px}@media (prefers-reduced-motion:reduce){.ob-rise,.ob-draw,.ob-phone,.ob-phone-line,.ob-level-badge,.ob-wave i,.ob-bars i,.ob-streak i,.q-step{opacity:1!important;stroke-dashoffset:0!important;animation:none!important;transform:none!important}.ob-phone-line{background:var(--accent)}}.auth-logo-lockup{z-index:1;flex-direction:column;align-items:center;gap:14px;margin-bottom:2.25rem;display:flex;position:relative}.auth-logo-lockup .wordmark{margin-bottom:0}.auth-logo{border:1px solid var(--hairline-strong);width:84px;height:84px;box-shadow:0 10px 30px #00000073, 0 0 0 6px var(--accent-soft);border-radius:22px}.cv-app{--surface-1:#161619;--surface-2:#1d1d21;--surface-3:#26262b;--hairline:#26262b;--hairline-strong:#34343a;--r-card:var(--r-lg)}.cv-app .cv-appbar{margin-bottom:1.25rem}.cv-app .cv-brand-mark{background:var(--accent);color:var(--on-accent,#fff);font-family:var(--font-display);border:0;font-weight:900}.cv-app .cv-greet-name{font-family:var(--font-display);font-size:15px;font-weight:700}.cv-hello{flex-direction:column;gap:6px;margin:0 2px 1.1rem;display:flex}.cv-hello-day{letter-spacing:.16em;text-transform:uppercase;color:var(--ink-subtle);font-size:12px;font-weight:700}.cv-hello-title{font-family:var(--font-display);letter-spacing:-.02em;overflow-wrap:anywhere;margin:0;font-size:38px;font-weight:900;line-height:1}.cv-showbar{border-radius:var(--r-lg);margin:0 0 12px;padding:18px}.cv-showbar-label{letter-spacing:.14em;text-transform:uppercase;color:var(--accent-text);font-size:12px;font-weight:700}.cv-showbar .cv-row-title{font-size:16px;font-weight:700}.cv-showbar-count{flex-direction:column;flex:none;align-items:flex-end;display:flex}.cv-showbar-count .cv-showbar-n{font-family:var(--font-display);color:var(--ink);font-size:46px;font-weight:900;line-height:.9}.cv-showbar-unit{color:var(--ink-subtle);font-size:12px;font-weight:600}.cv-showbar-n-word{font-family:var(--font-display);font-size:22px;font-weight:900}.cv-app .cv-hero{background:var(--accent);color:var(--on-accent,#fff);border-radius:var(--r-xl);border:0;margin-bottom:12px;padding:20px}@media (hover:hover){.cv-app .cv-hero:hover{background:color-mix(in srgb, var(--accent) 88%, white)}}.cv-app .cv-hero-title{color:inherit;font-family:var(--font-display);font-size:24px;font-weight:800}.cv-app .cv-hero-meta{color:inherit;opacity:.85}.cv-app .cv-hero-pill{color:inherit;background:#0000002e;border:0}.cv-app .cv-play{color:#fff;background:#0b0b0d;width:58px;height:58px}.cv-week{margin-bottom:12px;padding:16px 18px}.cv-week-head{justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:12px;display:flex}.cv-week-title{font-size:15px;font-weight:700}.cv-week-meta{color:var(--ink-subtle);text-align:right;font-size:13px}.cv-week-days{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;margin:0;padding:0;list-style:none;display:grid}.cv-week-day{flex-direction:column;align-items:center;gap:6px;display:flex}.cv-week-sq{aspect-ratio:1;background:var(--surface-2);border-radius:10px;width:100%;max-width:38px}.cv-week-done .cv-week-sq{background:var(--accent)}.cv-week-missed .cv-week-sq{background:var(--surface-3)}.cv-week-today .cv-week-sq{border:2px dashed var(--accent);background:0 0}.cv-week-l{color:var(--ink-subtle);font-size:11px}.cv-week-day:has(.cv-week-sq) .cv-week-l{font-weight:600}.cv-week-today .cv-week-l{color:var(--ink);font-weight:800}.cv-app .cv-tabbar{left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));border:1px solid var(--hairline);border-radius:var(--r-xl);background:color-mix(in srgb, var(--surface-1) 94%, transparent);padding:6px}@media (width>=640px){.cv-app .cv-tabbar{border-bottom:1px solid var(--hairline);border-radius:var(--r-xl);max-width:520px;margin:0 auto}}.cv-app .cv-tab{font-size:11px;font-weight:600}.cv-app .cv-tab.active{color:var(--accent-text);font-weight:800}.cv-app{padding-bottom:calc(6.5rem + env(safe-area-inset-bottom))}.recording-card{border-radius:var(--r-lg);background:var(--surface-1);border:1px solid var(--accent-line);flex-direction:column;gap:10px;margin-bottom:1rem;padding:14px;display:flex}.recording-frame{aspect-ratio:16/9;border-radius:var(--r-md);background:#000;position:relative;overflow:hidden}.recording-frame iframe{border:0;width:100%;height:100%;position:absolute;inset:0}.recording-open{font-size:var(--t-body-sm);color:var(--accent-text);align-self:flex-start;font-weight:700;text-decoration:none}.field-hint-error{color:var(--danger-text)}.stage-card{border-radius:var(--r-xl);padding:26px 22px 22px}.stage-title{font-family:var(--font-display);letter-spacing:-.02em;font-size:28px;font-weight:900;line-height:1.05}.stage-eyebrow{letter-spacing:.14em;font-weight:700}.call-sheet{border-radius:var(--r-md)}.call-sheet-num{background:var(--accent-soft);color:var(--accent-text);border-radius:7px}.stage-hud{inset:auto max(12px, env(safe-area-inset-right)) max(16px, calc(10px + env(safe-area-inset-bottom))) max(12px, env(safe-area-inset-left));border-radius:var(--r-xl);text-align:left;border:1px solid var(--hairline-strong);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0b0b0dd1;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"track track""count cue""count pose""count next";align-items:center;column-gap:16px;padding:16px 18px;display:grid}.stage-hud>*{text-align:left;margin:0}.stage-progress-track{grid-area:track;justify-content:flex-start;margin:0 0 12px}.stage-progress-seg{max-width:none;height:4px}.stage-progress-seg[data-state=done]{background:var(--ink);opacity:1}.stage-progress-count{grid-area:track;margin:0 0 10px}.stage-cue{letter-spacing:.16em;text-shadow:none;grid-area:cue;margin:0;font-weight:800}.stage-pose{text-align:left;text-shadow:none;font-family:var(--font-display);grid-area:pose;margin:2px 0 0;font-size:clamp(24px,7vw,32px);font-weight:900;line-height:1.02}.stage-pose-transition{color:var(--ink-muted);font-size:clamp(20px,6vw,26px)}.stage-next{text-align:left;color:var(--ink-subtle);grid-area:next;margin:4px 0 0}.stage-count{border:6px solid var(--accent);width:80px;height:80px;color:var(--ink);font-family:var(--font-display);letter-spacing:-.02em;border-radius:50%;grid-area:count;align-self:center;place-items:center;margin:0;font-size:30px;font-weight:900;display:grid}.stage-count-transition{border-color:var(--surface-3);color:var(--ink-muted);font-size:26px}.stage-mute,.stage-exit{background:#0b0b0d99}.camcheck-verdict{font-family:var(--font-display);border-radius:var(--r-lg);font-weight:900}.camcheck-hint{font-weight:600}.camcheck-foot{padding-top:2rem}.camcheck-division .field-select{border-radius:9999px}.camcheck-actions .btn-primary{border-radius:16px;min-height:56px}.field-input.field-select{height:48px;min-height:48px;padding:0 42px 0 14px}.save-photos{flex-wrap:wrap;align-items:center;gap:10px;display:inline-flex}.save-photos-btn{border:1px solid var(--hairline-strong);border-radius:12px;align-items:center;gap:8px;min-height:44px;font-weight:700;display:inline-flex}.btn-ghost-compact.save-photos-btn{min-height:36px;padding:6px 12px;font-size:13px}.save-photos-msg{font-size:var(--t-caption);color:var(--ink-subtle)}.checkin-grid+.save-photos,.checkin-angles+.save-photos{margin-top:12px}.cv-card-head .save-photos{margin-left:auto}.checkin-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px;display:flex}.checkin-actions .save-photos{margin-top:0}.checkin-vs{border-radius:var(--r-card,18px);background:var(--surface-1,#161619);border:1px solid var(--hairline,#26262b);gap:12px;margin-top:16px;padding:16px;display:grid}.checkin-vs .progress-filter{margin:0}.checkin-ghost{object-fit:cover;pointer-events:none;z-index:1;width:100%;height:100%;transition:opacity .25s;position:absolute;inset:0;transform:scaleX(-1)}.checkin-ghost-rear{transform:none}.checkin-ghost-tag{left:50%;top:calc(env(safe-area-inset-top,0px) + 64px);z-index:3;letter-spacing:.04em;color:var(--ink,#f4f1ec);white-space:nowrap;pointer-events:none;background:#0b0b0d9e;border:1px solid #ffffff24;border-radius:999px;padding:5px 12px;font-size:12px;font-weight:600;position:absolute;transform:translate(-50%)}.checkin-weight{gap:6px;display:grid}.checkin-weight-row{gap:8px;display:flex}.checkin-weight-row .field-input{flex:1;min-width:0;height:48px}.checkin-weight-row .field-select-wrap{flex:none;width:92px}.weight-trend{border-radius:var(--r-card,18px);background:var(--surface-1,#161619);border:1px solid var(--hairline,#26262b);gap:10px;margin-bottom:18px;padding:16px;display:grid}.weight-trend-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;display:flex}.weight-trend-title{margin:0;font-size:16px;font-weight:600}.weight-trend-now{font-family:Archivo, var(--font-display,sans-serif);letter-spacing:-.02em;font-size:28px;font-weight:800}.weight-trend-delta{color:var(--ink-subtle,#a6a29b);font-size:13px}.weight-trend svg{width:100%;height:90px;display:block;overflow:visible}.weight-trend-line{fill:none;stroke:var(--accent);stroke-width:2.5px;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke}.weight-trend-area{fill:color-mix(in srgb, var(--accent) 14%, transparent)}.weight-trend-dot{fill:var(--accent)}.weight-trend-axis{color:var(--ink-subtle,#a6a29b);justify-content:space-between;font-size:12px;display:flex}.checkin-weight{margin-bottom:18px}.save-photos+.checkin-submit{margin-top:14px}
