@font-face{font-family:Roboto;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/roboto-latin-500-normal-7RbcRiD8.woff2)format("woff2"),url(/assets/roboto-latin-500-normal-DQZyH_nt.woff)format("woff")}.onboarding-form .btn,.onboarding-login-panel>.btn{width:100%}.onboarding-steps{color:#657168;align-items:center;gap:30px;margin:0 0 28px;padding:0 3px;display:flex}.onboarding-steps>div{flex:1;gap:7px;max-width:195px;margin:auto;display:flex}.onboarding-steps span{background:#e4e9e2;border-radius:4px;flex:1;height:4px}.onboarding-steps .filled{background:#173f35}.onboarding-steps small{font-variant-numeric:tabular-nums;font-size:12px}.onboarding-goals{gap:12px;margin-top:26px;display:grid}.onboarding-goal{text-align:left;color:#202923;cursor:pointer;background:linear-gradient(115deg,#f1f4ef,#fff);border:1px solid #e7ebe4;border-radius:15px;align-items:center;gap:15px;width:100%;min-height:99px;padding:23px 17px;font-family:inherit;display:flex}.onboarding-goal.selected{background:#eaf0e7;border-color:#173f35}.onboarding-goal-icon{color:#173f35;flex-shrink:0;place-items:center;width:36px;display:grid}.onboarding-goal>span:nth-child(2){flex:1}.onboarding-goal strong{letter-spacing:-.3px;font-size:17px;font-weight:700;display:block}.onboarding-goal small{color:#657168;margin-top:7px;font-size:12px;line-height:1.6;display:block}.onboarding-radio{border:1px solid #a5aea4;border-radius:50%;flex-shrink:0;place-items:center;width:20px;height:20px;display:grid}.onboarding-goal.selected .onboarding-radio{color:#fff;background:#173f35;border-color:#173f35}.onboarding-hint{text-align:center;color:#657168;margin:28px 0 0;font-size:12px}.onboarding-next{margin-top:33px}.onboarding-description{color:#657168;margin:0 0 14px;font-size:12px;line-height:1.7}.onboarding-unit{text-align:right;color:#657168;margin:7px 0 0;font-size:11px}.onboarding-error{color:#a63e29;margin:12px 0;font-size:12px;line-height:1.6}.onboarding-body-fields{margin-top:24px;margin-bottom:24px}.onboarding-body-fields .field:last-child{margin-bottom:0}.onboarding-form .section .field{margin-top:14px}.onboarding-form>.field{margin-bottom:12px}.onboarding-photo{background:#e9eee5;height:330px;margin:-12px -24px 0;position:relative;overflow:hidden}.onboarding-photo img{object-fit:cover;object-position:50% 32%;width:100%;height:100%}.onboarding-photo:after{content:"";background:linear-gradient(#0000,#edf1e9);position:absolute;inset:70% 0 0}.onboarding-photo>div{color:#173f35;text-align:right;text-shadow:0 1px 5px #fff;font-size:16px;line-height:1.85;position:absolute;top:38px;right:19px}.onboarding-photo>div>span{background:#d8f36a;width:41px;height:3px;margin:9px 0 0 auto;display:block;transform:rotate(-15deg)}.onboarding-login-panel{background:#f7f8f2;border-radius:30px 30px 0 0;margin:-24px -24px 0;padding:28px 24px 5px;position:relative}.onboarding-login-panel .page-heading h1{letter-spacing:-1px;font-size:28px}.onboarding-login-panel .page-heading{margin-bottom:24px}.onboarding-login-panel .notice{margin-bottom:14px}.onboarding-divider{color:#657168;align-items:center;gap:12px;margin:22px 0 16px;font-size:11px;display:flex}.onboarding-divider:before,.onboarding-divider:after{content:"";background:#dfe5dc;flex:1;height:1px}.onboarding-agreement{color:#657168;justify-content:center;align-items:center;gap:5px;margin:18px 0 8px;font-size:10px;line-height:1.7;display:flex}.onboarding-agreement>button{background:0 0;border:0;align-items:center;padding:5px;display:flex}.onboarding-agreement>button>span{border:1px solid #96a092;border-radius:50%;place-items:center;width:16px;height:16px;display:grid}.onboarding-agreement>button>span.checked{color:#fff;background:#173f35;border-color:#173f35}.onboarding-link{font:inherit;color:#173f35;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.food-page{flex-direction:column;gap:15px;display:flex}.food-page h1{margin:0;font-size:25px;line-height:1.3}.food-page h2{margin:0;font-size:21px;line-height:1.35}.food-page .btn{width:100%}.food-nutrition{color:#173f35;background:#eaf1e9;border-radius:16px;padding:17px}.food-target{justify-content:space-between;align-items:center;gap:10px;display:flex}.food-target b{letter-spacing:-1.3px;font-size:36px;line-height:1.2}.food-target span{font-size:12px;line-height:1.8}.food-target small{font-size:13px}.food-macros{grid-template-columns:repeat(3,1fr);gap:17px;margin-top:14px;display:grid}.food-macros>div>div{background:#d5dfd6;border-radius:10px;height:8px;margin-top:7px;overflow:hidden}.food-macros i{border-radius:10px;height:100%;display:block}.food-hero{cursor:pointer;background:#e5ece2;border:0;border-radius:14px;width:100%;height:202px;padding:0;position:relative;overflow:hidden}.food-hero img{object-fit:cover;width:100%;height:100%}.food-hero>span{color:#fff;background:#173f35ba;border-radius:7px;padding:6px 9px;font-size:11px;position:absolute;bottom:10px;right:9px}.food-caption p{color:#657168;margin:7px 0 11px;font-size:14px}.food-tags{gap:7px;display:flex}.food-tags span{background:#eef1ed;border-radius:8px;align-items:center;gap:5px;padding:7px 9px;font-size:12px;display:flex}.food-summary-link{color:#657168;text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;gap:8px;padding:8px 0;font-size:12px;display:flex}.food-summary-link>span:last-child{color:#173f35;align-items:center;display:flex}.food-summary-link b{color:#173f35}.food-fine{color:#7d887f;text-align:center;margin:0;font-size:11px;line-height:1.6}.food-filters{gap:8px;display:flex}.food-filters button{color:#526356;background:#fff;border:1px solid #dce4db;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:6px;min-height:37px;font-size:12px;display:flex}.food-filters button.on{color:#173f35;background:#eaf1e9;border-color:#173f35}.food-restaurants{flex-direction:column;display:flex}.food-shop{text-align:left;color:#202923;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #e5e9e2;align-items:center;gap:12px;padding:15px 0;display:flex}.food-shop>img{object-fit:cover;border-radius:12px;width:94px;height:106px}.food-shop>span{flex-direction:column;flex:1;gap:7px;min-width:0;display:flex}.food-shop strong{font-size:18px}.food-shop span span{font-size:13px}.food-shop small{color:#657168;font-size:11px}.food-shop em{color:#57714a;font-size:10px;font-style:normal}.food-detail-image{height:235px;margin:0 -22px;position:relative}.food-detail-image>img{object-fit:cover;width:100%;height:100%}.food-favorite{color:#173f35;cursor:pointer;background:#ffffffed;border:none;border-radius:50%;place-items:center;width:39px;height:39px;display:grid;position:absolute;top:12px;right:15px}.food-favorite.on{background:#d8f36a}.food-favorite.on svg{fill:#173f35}.food-shop-name{color:#657168;cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;padding:9px 0;font-size:14px;display:flex}.food-price{justify-content:space-between;align-items:center;display:flex}.food-price strong{color:#202923;font-size:27px}.food-price span{color:#657168;font-size:13px}.food-ingredients{justify-content:space-between;gap:8px;padding-top:8px;display:flex}.food-ingredients span{color:#657168;align-items:center;gap:6px;font-size:13px;display:flex}.food-reason{color:#657168;align-items:center;gap:10px;margin:8px 0 0;font-size:13px;line-height:1.6;display:flex}.food-reason svg{color:#173f35;flex-shrink:0}.food-actions{gap:10px;display:flex}.food-actions .btn{flex:1;padding-left:9px;padding-right:9px;font-size:13px}.food-record-total{align-items:baseline;gap:6px;margin-top:4px;display:flex}.food-record-total b{letter-spacing:-1.3px;font-size:37px}.food-record-total span{font-size:18px}.food-progress{background:#d9e5d9;border-radius:8px;height:11px;margin-top:11px;overflow:hidden}.food-progress i{background:#173f35;border-radius:8px;height:100%;display:block}.food-remaining{text-align:right;color:#657168;margin:8px 0 0;font-size:11px}.food-logs{flex-direction:column;gap:10px;display:flex}.food-log-group{flex-direction:column;gap:8px;display:flex}.food-log{color:#202923;text-align:left;background:#fff;border:1px solid #e7ebe3;border-radius:13px;align-items:center;gap:12px;width:100%;padding:7px;display:flex}.food-log>img,.food-log-placeholder{object-fit:cover;border-radius:9px;flex-shrink:0;width:74px;height:77px}.food-log-placeholder{color:#a4b09c;background:#f0f2eb;place-items:center;display:grid}.food-log>div{flex-direction:column;flex:1;gap:5px;min-width:0;display:flex}.food-log strong,.food-log span:not(.food-log-placeholder){font-size:13px}.food-log small{color:#657168;font-size:12px}.food-empty-log{cursor:pointer}.food-empty-log>svg{margin-right:10px}.food-sheet{flex-direction:column;gap:14px;padding:0 20px 25px;display:flex}.food-sheet .btn{width:100%;text-decoration:none}.food-sheet h3,.food-sheet p{margin:0;font-size:14px;line-height:1.7}.food-upload{object-fit:cover;border-radius:12px;width:100%;height:140px}.food-error{color:#ab4036}.food-breakfast{text-align:center;flex-direction:column;align-items:center;gap:15px;padding:13px 3px;display:flex}.food-breakfast p{color:#657168;margin:0;font-size:13px;line-height:1.6}.coach-action{color:#173f35;background:#eaf0e5;border-radius:14px;margin-top:12px;padding:16px}.coach-action-head{align-items:center;gap:7px;font-size:12px;display:flex}.coach-action h3{margin:16px 0 10px;font-size:18px}.coach-action-meta{justify-content:space-between;align-items:center;gap:16px;display:flex}.coach-action-meta strong{font-size:30px}.coach-action-meta small,.coach-action-meta span{font-size:12px;font-weight:400}.coach-action>p{font-size:13px;line-height:1.7}.coach-action .btn{margin-bottom:0}.coach-thinking{color:#41604f;align-items:center;gap:5px;font-size:12px;display:flex}.coach-thinking>span{background:#41604f;border-radius:50%;width:5px;height:5px;animation:1s ease-in-out infinite coach-pulse}.coach-thinking>span:nth-child(2){animation-delay:.15s}.coach-thinking>span:nth-child(3){margin-right:6px;animation-delay:.3s}.coach-error{color:#a84a2b;font-size:13px}.coach-plan-sheet{color:#173f35;padding-bottom:20px}.coach-plan-title h2{font-variant-numeric:tabular-nums;margin:12px 0 8px;font-size:44px}.coach-plan-title h2 small{font-size:16px;font-weight:500}.coach-plan-title p{font-size:14px;line-height:1.7}.coach-plan-compare{background:#edf2e8;border-radius:12px;justify-content:space-between;align-items:center;padding:14px;display:flex}.coach-plan-compare span{font-size:12px}.coach-plan-compare b{margin-top:6px;font-size:18px;display:block}.coach-plan-phases .row-text small{max-width:190px}.coach-plan-phases .row>b{white-space:nowrap;font-size:13px}@keyframes coach-pulse{50%{opacity:.3;transform:translateY(-2px)}}@media (prefers-reduced-motion:reduce){.coach-thinking>span{animation:none}}.coach-time-edit{color:#173f35;width:100%;font:inherit;background:0 0;border:0;align-items:center;gap:12px;padding:16px 0;display:flex}.coach-time-edit span{text-align:left;flex:1;font-size:14px}.coach-meal-thumbs{gap:8px;margin-top:14px;display:flex}.coach-meal-thumbs img{object-fit:cover;border-radius:8px;width:80px;height:65px}.coach-meal-options{flex-direction:column;gap:10px;display:flex}.coach-meal-option{text-align:left;color:#173f35;font:inherit;background:#fff;border:1px solid #bfcdbd;border-radius:12px;align-items:center;gap:10px;padding:10px;display:flex}.coach-meal-option.chosen{background:#edf3e5;border-color:#173f35}.coach-meal-option img{object-fit:cover;border-radius:8px;width:68px;height:72px}.coach-meal-option>span{flex:1}.coach-meal-option strong{font-size:14px}.coach-meal-option small{margin-top:4px;font-size:11px;line-height:1.7;display:block}.coach-plan-title h2{margin:8px 0 4px;font-size:36px}.coach-plan-title p{margin:8px 0 12px}.coach-plan-phases .row{padding:10px 0}.coach-plan-compare{padding:10px 14px}.coach-plan-sheet>.notice{margin:12px 0}.coach-plan-sheet>.btn.ghost{margin-top:4px}.coach-page .demo-label{color:#4c6452;align-items:center;gap:5px;margin-top:-4px;padding:6px 9px;font-size:11px;display:inline-flex}.coach-page .chat-messages{margin:20px 0}.coach-page .message{max-width:96%}.coach-page .message.user{max-width:88%}.coach-starters{margin:20px 0 6px}.coach-starters-title{color:#657168;margin-bottom:10px;font-size:12px}.coach-starters>button{color:#173f35;text-align:left;background:#fff;border:1px solid #dce5d7;border-radius:12px;align-items:center;gap:12px;width:100%;margin:8px 0;padding:14px;display:flex}.coach-starters>button>span{flex:1}.coach-starters b{font-size:14px;display:block}.coach-starters small{color:#58675e;margin-top:3px;font-size:12px;display:block}.coach-starters>button>svg:first-child{box-sizing:content-box;background:#edf3e7;border-radius:10px;padding:9px}.coach-secondary-actions{gap:8px;margin-top:12px;display:flex}.coach-secondary-actions button{color:#4d6555;background:0 0;border:0;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:6px;min-height:44px;padding:7px;font-size:12px;display:flex}.coach-starters.is-followup>button{padding:10px 12px}.coach-starters.is-followup small{display:none}.chat-composer{box-shadow:none;border-radius:16px;padding:7px}.chat-composer input{font-size:14px!important}.chat-composer button{width:42px;height:42px}.coach-plan-sheet{padding-bottom:calc(var(--mobile-safe-area-height,20px) + 24px)}.coach-meal-option{min-height:94px}.coach-meal-option small,.coach-plan-sheet .notice{font-size:12px}.coach-action{animation:.2s ease-out coach-card-in}.coach-action .btn{min-height:44px}@keyframes coach-card-in{0%{opacity:.7;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.coach-action{animation:none}}.chat-composer.chat-composer{box-shadow:none;border-radius:16px;padding:7px}.chat-composer.chat-composer button{width:42px;height:42px}.coach-config-trigger{color:#173f35;background:#fff;border:1px solid #cad7c8;border-radius:12px;flex-shrink:0;align-items:center;gap:6px;min-height:44px;padding:8px 12px;font-size:13px;display:flex}.coach-settings{padding-bottom:calc(var(--mobile-safe-area-height,20px) + 24px);color:#173f35}.coach-config-status{background:#edf3e8;border-radius:12px;align-items:center;gap:12px;margin:4px 0 16px;padding:16px;display:flex}.coach-config-status strong{font-size:18px;display:block}.coach-config-status small{color:#53694e;margin-top:4px;font-size:13px;display:block}.coach-config-help{color:#58675e;font-size:12px;line-height:1.7}.coach-config-message{overflow-wrap:anywhere;border-radius:10px;padding:12px;font-size:13px;line-height:1.6}.coach-config-message.error{color:#874522;background:#fff1e5}.coach-config-message.success{color:#173f35;background:#edf3e8}.coach-clear-confirm{border:1px solid #dec9b5;border-radius:12px;padding:12px;font-size:13px}.profile-module{flex-direction:column;gap:20px;display:flex}.profile-module h2,.profile-module h3,.profile-module p{margin-top:0}.profile-person{align-items:center;gap:18px;display:flex}.profile-person>img{object-fit:cover;object-position:50% 20%;background:#e6ece3;border-radius:50%;width:92px;height:92px}.profile-person h2{margin-bottom:8px;font-size:25px}.profile-person p{color:#657168;margin-bottom:12px;font-size:13px}.profile-edit{color:#173f35;background:#f1f6ef;border:1px solid #d4dfd5;border-radius:20px;align-items:center;gap:8px;padding:6px 12px;font-size:12px;display:flex}.profile-motivation{color:#fff;background:linear-gradient(120deg,#103d31,#235644);border-radius:20px;padding:24px 20px 18px}.profile-eyebrow{color:#d8f36a;letter-spacing:1.4px;font-size:10px}.profile-motivation h2{margin:16px 0 8px;font-size:25px}.profile-motivation>p{color:#dbe7df;margin-bottom:24px;font-size:13px}.profile-motivation .stats{background:0 0;border-top:1px solid #ffffff26;padding-top:18px}.profile-motivation .stats b{color:#fff}.profile-motivation .stats small{color:#d8e5dd}.profile-module>.card{padding:0 15px}.profile-module .profile-help{background:#eaf0e7}.profile-module .profile-report,.profile-module .profile-weight{padding:20px 17px}.profile-report>h2{margin-bottom:7px;font-size:23px}.profile-muted{color:#657168;font-size:12px;line-height:1.6}.profile-report .stats{background:#edf3ed;border-radius:14px;margin:18px 0 24px;padding:18px 8px}.profile-report h3{margin-bottom:20px;font-size:14px}.profile-chart{background:repeating-linear-gradient(0deg,#0000 0 39px,#e8ede580 40px);border-bottom:1px solid #e1e7df;align-items:end;gap:12px;padding-bottom:8px;display:flex}.profile-column{text-align:center;flex:1;min-width:0}.profile-column small{color:#657168;white-space:nowrap;font-size:10px}.profile-bar-area{flex-direction:column;justify-content:flex-end;align-items:center;gap:8px;height:118px;padding-bottom:8px;display:flex}.profile-bar-area b{font-size:13px}.profile-bar-area>span{background:linear-gradient(#173f35,#316953);border-radius:5px 5px 0 0;width:min(100%,38px)}.profile-weight h2{font-size:17px}.profile-weight .text-button{color:#326b44;background:0 0;border:none;align-items:center;gap:4px;font-size:11px;display:flex}.profile-weight-line{align-items:center;gap:12px;margin:17px 0;font-size:12px;display:flex}.profile-weight-line>span{color:#657168;width:32px}.profile-weight-line>div{background:#edf2e9;border-radius:4px;flex:1;height:6px;overflow:hidden}.profile-weight-line i{background:#83a77c;border-radius:4px;height:6px;display:block}.profile-weight-line>b{text-align:right;width:65px;font-size:14px}.profile-weight-line small{color:#657168;font-size:10px;font-weight:400}.profile-weight>.profile-muted{margin:22px 0 0}.profile-module .profile-calendar{padding:16px 14px 0;overflow:hidden}.profile-calendar-top{justify-content:space-between;align-items:center;margin-bottom:13px;display:flex}.profile-calendar-top h2{margin:0;font-size:18px}.profile-calendar-top>div{display:flex}.profile-calendar-top .icon-btn{width:30px;height:32px}.profile-calendar-grid{text-align:center;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px 3px;display:grid}.profile-calendar-grid>small{color:#657168;padding:5px 0 10px;font-size:12px}.profile-calendar-grid>button{color:#263d32;background:0 0;border:0;border-radius:11px;flex-direction:column;justify-content:center;align-items:center;gap:4px;height:41px;font-size:13px;display:flex}.profile-calendar-grid>button.selected{color:#fff;background:#173f35}.profile-calendar-grid>button.is-today:not(.selected){box-shadow:inset 0 0 0 1px #b2c8b4}.profile-calendar-grid i{background:0 0;border-radius:50%;width:4px;height:4px}.profile-calendar-grid i.has-session{background:#4a8656}.profile-calendar-grid .selected i.has-session{background:#d8f36a}.profile-month-summary{background:#e9f0e6;margin:16px -14px 0;padding:14px 16px;font-size:13px}.profile-month-summary b{margin-left:5px}.profile-filter{color:#657168;justify-content:space-between;align-items:center;font-size:12px;display:flex}.profile-filter button{color:#173f35;background:0 0;border:none;font-size:12px;text-decoration:underline}.profile-history-item>p{margin-bottom:9px;font-size:14px;font-weight:600}.profile-history-item>.card{padding:2px 10px}.profile-history-item .row-photo{object-fit:cover;border-radius:10px;width:74px;height:62px}.profile-done{color:#fff;background:#79a542;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;display:flex}.profile-empty{text-align:center;color:#657168;padding:30px 15px!important}.profile-empty>svg{color:#628260;margin-bottom:15px}.profile-empty h3{color:#173f35;font-size:16px}.profile-empty p{font-size:13px;line-height:1.8}.profile-empty .btn{margin-top:18px}.profile-module .section{margin:0}.profile-module .section h2{font-size:17px}.profile-module .section>.card{padding:0 14px}.profile-fineprint{color:#899288;font-size:11px;line-height:1.8;margin:10px 5px 0!important}.profile-logout{color:#bf5145!important}.profile-sheet{color:#263d32;flex-direction:column;gap:18px;padding:4px 20px 30px;display:flex}.profile-sheet>p{color:#657168;margin:0;font-size:14px;line-height:1.85}.profile-sheet .profile-danger{color:#b54840}.profile-sheet .stats{background:#edf3e9;border-radius:14px;padding:20px}.profile-sheet .row{width:100%}.profile-sheet .profile-empty{padding:10px 0!important}.fitness-app{--muted:#58675e}.fitness-app .field input,.fitness-app .field textarea{font-size:16px}.fitness-app .field input::placeholder,.fitness-app .field textarea::placeholder{color:#647268}.fitness-app .icon-btn{min-width:44px;min-height:44px}.fitness-app .choices button{min-height:44px}.fitness-app .page-heading h1{letter-spacing:-.6px}.fitness-app .page-heading p{font-size:14px;line-height:1.65}.fitness-app .stats small{font-size:12px}.fitness-app .bottom-tabs button{color:#65756c;gap:3px;min-height:44px;font-size:11px}.fitness-app .bottom-tabs button.selected{color:var(--pine)}.fitness-app .bottom-tabs button.selected svg{background:#edf3e5;border-radius:5px;box-shadow:0 0 0 5px #edf3e5}.fitness-app .btn,.fitness-app .choices button,.fitness-app .coach-starters button{transition:background-color .18s ease-out,transform .18s ease-out,border-color .18s ease-out}.fitness-app .btn:active,.fitness-app .coach-starters button:active{transform:scale(.98)}.fitness-app .app-content{animation:.18s ease-out screen-settle}.fitness-app .home-top>span{color:var(--muted);font-size:12px}.fitness-app .hero-copy h2{letter-spacing:-.5px;margin-top:9px;font-size:24px}.fitness-app .hero-copy p{max-width:190px;font-size:12px}.fitness-app .hero-copy>small{margin-top:13px;font-size:11px;line-height:1.6}.fitness-app .hero-copy .btn{min-height:44px;font-weight:650}.fitness-app .agenda-item time{width:46px;font-size:12px}.fitness-app .agenda-item .row-text small{font-size:12px;line-height:1.4}.fitness-app .agenda-item .row-text strong{font-size:14px}.fitness-app .coach-teaser b{font-size:13px}.fitness-app .coach-teaser small{font-size:11px}.fitness-app .progress-dots>span.done{background:var(--lime);color:var(--pine);border-color:var(--lime)}.fitness-app .training-cue{color:#dceade;justify-content:center;align-items:center;gap:7px;margin:12px 0 16px;font-size:12px;display:flex}.fitness-app .training-cue svg{flex-shrink:0}.fitness-app .step-track{gap:6px}.fitness-app .step-track>span{background:#ffffff26;overflow:hidden}.fitness-app .step-track>span>i{background:var(--lime);border-radius:inherit;height:100%;transition:width .25s linear;display:block}.fitness-app .active-photo{height:245px}.fitness-app .active-photo>img{animation:.22s ease-out exercise-settle}.fitness-app .timer{font-variant-numeric:tabular-nums;letter-spacing:-2px;margin-top:18px;font-size:64px}.fitness-app .timer-caption{color:#deeadf;font-size:13px}.fitness-app .player-controls{margin-top:22px}.fitness-app .active-footer button{min-height:44px;font-size:13px}.fitness-app .completion-badge{animation:.38s ease-out completion-settle}.fitness-app[data-route=complete] .page-heading{text-align:center;justify-content:center}.fitness-app[data-route=complete] .completion-badge{margin:18px auto 24px}.fitness-app[data-route=complete] .stats{padding:10px 0}.fitness-app .training-empty{padding-top:36px}.fitness-app .training-empty .completion-badge{background:#e8efe5}.fitness-app .training-empty .card{margin:28px 0}.fitness-app .food-today{padding:16px}.fitness-app .food-record-shortcut{min-height:44px;color:var(--pine);background:0 0;border:0;align-items:center;gap:3px;font-size:12px;display:flex}.fitness-app .food-intake-progress{appearance:none;background:#d8e3d6;border:0;border-radius:8px;width:100%;height:6px;margin-top:12px;display:block;overflow:hidden}.fitness-app .food-intake-progress::-webkit-progress-bar{background:#d8e3d6}.fitness-app .food-intake-progress::-webkit-progress-value{background:var(--pine);border-radius:8px}.fitness-app .food-target-caption{color:#4f6857;margin:8px 0 0;font-size:11px}.fitness-app .food-tags span{font-size:12px}.fitness-app .food-fine{color:var(--muted);font-size:12px}.fitness-app .profile-motivation{padding:16px 18px}.fitness-app .profile-motivation h2{margin:8px 0 4px;font-size:21px}.fitness-app .profile-motivation>p{margin-bottom:12px;font-size:12px}.fitness-app .profile-eyebrow{letter-spacing:0;font-size:11px}.fitness-app .profile-motivation .stats{padding-top:12px}.fitness-app .profile-motivation .stats b{font-size:24px}.fitness-app .intensity-scale button{min-width:44px;min-height:44px;font-weight:650}.fitness-app .intensity-scale button.selected{outline-offset:3px;outline:2px solid #b0c68e}.fitness-app .toast{box-shadow:none;animation:.18s ease-out screen-settle}@keyframes screen-settle{0%{opacity:.75;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes exercise-settle{0%{opacity:.7}to{opacity:1}}@keyframes completion-settle{0%{opacity:.6;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.fitness-app *{transition:none!important;animation:none!important}}.fitness-app button:focus-visible,.fitness-app a:focus-visible,.fitness-app input:focus-visible,.fitness-app textarea:focus-visible{outline-offset:3px;outline:3px solid #789546}.fitness-app .row-text small,.fitness-app .notice,.fitness-app .onboarding-description{font-size:13px;line-height:1.65}.fitness-app .home-top>span,.fitness-app .hero-copy>small,.fitness-app .coach-teaser small,.fitness-app .weekly-progress>small,.fitness-app .food-target-caption{font-size:12px}.fitness-app .onboarding-agreement{justify-content:flex-start;font-size:12px}.fitness-app .onboarding-agreement>button{flex-shrink:0;justify-content:center;min-width:44px;min-height:44px}.fitness-app .onboarding-next{background:var(--paper);z-index:2;border-top:1px solid var(--line);margin-top:24px;padding:12px 0 8px;position:sticky;bottom:0}.fitness-app[data-keyboard=open] .onboarding-next{position:static}.fitness-app .exercise-guide-label{color:#fff;background:#173f35;border-radius:9px;align-items:center;gap:8px;padding:12px;font-size:14px;display:flex;position:absolute;bottom:12px;left:12px}.fitness-app .cover-save,.fitness-app .food-favorite{min-width:44px;min-height:44px}.fitness-app .task-row>.checkbox{border-radius:10px;flex-shrink:0;min-width:44px;min-height:44px}.fitness-app .timetable-days{gap:4px}.fitness-app .timetable-days button{padding:10px 3px;font-size:13px}.daily-courses{border:1px solid var(--line);background:#fff;border-radius:14px;padding:4px 14px 12px}.daily-course{border-bottom:1px solid var(--line);align-items:center;gap:14px;min-height:82px;display:flex}.daily-course time{color:var(--pine);font-variant-numeric:tabular-nums;font-size:14px;font-weight:650}.daily-course>span{flex:1;min-width:0}.daily-course strong{overflow-wrap:anywhere;font-size:15px}.daily-course small{color:var(--muted);margin-top:5px;font-size:12px;display:block}.timetable-empty{text-align:center;color:var(--pine);flex-direction:column;align-items:center;gap:10px;padding:24px 8px 12px;display:flex}.timetable-empty p{color:var(--muted);margin:0;font-size:13px}.fitness-app .timetable{grid-template-columns:45px repeat(5,minmax(0,1fr))}.fitness-app .timetable>div,.fitness-app .timetable>span,.fitness-app .timetable>button{min-height:52px;padding:4px 2px;font-size:12px}.fitness-app .timetable .table-head{min-height:38px}.fitness-app .coach-error{color:#854322;background:#fff6ec;border:1px solid #efd8bb;border-radius:14px;padding:15px}.coach-error strong{font-size:15px}.coach-error p{margin:8px 0;font-size:13px;line-height:1.7}.coach-error-actions{gap:8px;display:flex}.coach-error-actions .btn{flex:1;margin:4px 0 0;padding:10px 6px;font-size:13px}.fitness-app .chat-composer input{font-size:16px!important}.fitness-app .chat-composer{transition:none}.fitness-app .chat-composer:focus-within{border-color:#719078;box-shadow:0 0 0 2px #dce8d6}.fitness-app.workout-mode>.app-safe-area-mask{background:var(--paper)}.fitness-app.workout-mode:after{content:"";pointer-events:none;height:var(--mobile-safe-area-height,0px);background:var(--paper);z-index:11;position:absolute;bottom:0;left:0;right:0}.pose-practice{color:var(--pine)}.pose-toolbar{top:var(--device-safe-area-top,54px);z-index:12;background:var(--paper);height:48px;color:var(--pine);align-items:center;gap:8px;padding:0 12px;display:flex;position:absolute;left:0;right:0}.pose-toolbar>span{flex:1;font-size:17px;font-weight:550}.pose-toolbar>.icon-btn:last-child{background:var(--sage);border-radius:50%}.pose-practice h1{letter-spacing:-1px;color:var(--pine);margin:8px 0 14px;font-size:40px;font-weight:750;line-height:1.15}.pose-subtitle{color:var(--muted);margin:0 0 20px;font-size:14px;line-height:1.6}.pose-eyebrow{color:var(--muted);margin:10px 0;font-size:12px;display:block}.pose-steps{justify-content:space-between;gap:18px;margin:22px 0;padding:0 8px;list-style:none;display:flex}.pose-steps li{color:#718176;flex-direction:column;flex:1;align-items:center;gap:8px;display:flex;position:relative}.pose-steps li:not(:last-child):after{content:"";background:#d9e1d7;width:72%;height:1px;position:absolute;top:16px;left:75%}.pose-steps li>span{background:#e8ede6;border-radius:50%;place-items:center;width:34px;height:34px;font-size:16px;display:grid}.pose-steps strong{font-size:14px;font-weight:550}.pose-steps .current{color:var(--pine)}.pose-steps .current>span{background:var(--pine);color:#fff;box-shadow:0 0 0 4px var(--lime)}.pose-photo{aspect-ratio:350/280;background:var(--sage);border-radius:12px;position:relative;overflow:hidden}.pose-photo>img,.pose-photo>video{object-fit:cover;width:100%;height:100%;display:block}.pose-photo-state,.pose-photo-label{color:#fff;background:#173f35d9;border-radius:7px;align-items:center;gap:6px;padding:6px 9px;font-size:12px;display:flex;position:absolute}.pose-photo-state{top:10px;left:10px}.pose-photo-label{background:#26332cbd;font-size:11px;bottom:10px;right:10px}.pose-cue{margin:22px 0 14px}.pose-cue h2{letter-spacing:-.5px;color:var(--pine);font-size:25px}.pose-cue p{color:var(--muted);margin:8px 0;font-size:14px;line-height:1.7}.pose-frame-status{text-align:left;border:0;border-top:1px solid var(--line);width:100%;color:var(--pine);background:0 0;align-items:center;gap:10px;min-height:48px;padding:16px 0;font-size:13px;display:flex}.pose-frame-status>span{flex:1}.pose-practice>.btn{min-height:48px;margin:8px 0}.pose-practice>.btn.ghost{margin:0}.pose-footnote{color:var(--muted);text-align:center;margin:7px 0;font-size:11px;line-height:1.65}.pose-setup-photo{aspect-ratio:350/235}.pose-checklist{margin:18px 0;padding:0;list-style:none}.pose-checklist>li{border-bottom:1px solid var(--line);align-items:flex-start;gap:12px;padding:12px 0;display:flex}.pose-checklist svg{flex-shrink:0;margin-top:3px}.pose-checklist strong{font-size:15px;display:block}.pose-checklist small{color:var(--muted);margin-top:4px;font-size:13px;line-height:1.6;display:block}.pose-error{color:#864221;background:#fff0e3;border-radius:10px;padding:12px;font-size:13px}.pose-frame-message{color:#fff;text-align:center;background:#173f35d9;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:24px;display:flex;position:absolute;inset:0}.pose-frame-message>span{font-size:13px}.pose-camera{aspect-ratio:3/4}.pose-camera video{object-fit:contain;transform:scaleX(-1)}.pose-summary-icon{background:var(--lime);border-radius:50%;place-items:center;width:66px;height:66px;margin:20px 0;display:grid}.pose-summary-number{align-items:baseline;gap:14px;margin:25px 0;display:flex}.pose-summary-number strong{font-size:60px;line-height:1}.pose-summary-number span{color:var(--muted);font-size:14px}.fitness-app[data-route=pose] .app-content{padding-bottom:calc(var(--mobile-safe-area-height) + 24px)}.pose-practice .btn:focus-visible,.pose-frame-status:focus-visible{outline-offset:3px;outline:3px solid #789546}@media (prefers-reduced-motion:reduce){.pose-practice *{transition:none!important;animation:none!important}}.pose-live h1{margin:4px 0 9px;font-size:36px}.pose-live .pose-subtitle{margin-bottom:12px}.pose-live .pose-steps{margin:16px 0}.pose-live .pose-photo{aspect-ratio:auto;height:210px}.pose-live .pose-cue{margin:14px 0 8px}.pose-live .pose-cue h2{font-size:23px}.pose-live .pose-cue p{margin:6px 0;font-size:13px}.pose-live .pose-frame-status{padding:12px 0}.pose-controls{z-index:13;background:var(--paper);color:var(--pine);border-top:1px solid var(--line);padding:8px 22px 6px;position:absolute;left:0;right:0}.pose-controls .btn{min-height:44px;margin:4px 0}.pose-controls .btn.ghost{min-height:36px;margin:0;padding:6px;font-size:13px}.pose-controls .pose-footnote{margin:2px 0 4px;font-size:10px}.fitness-app[data-route=pose] .app-content:has(.pose-live){padding-bottom:calc(var(--mobile-safe-area-height) + 145px)}.pose-live .pose-photo{background:#e8e6df;height:250px}.pose-live .pose-photo>img{object-fit:contain}:root{color:#151515;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background:#fff;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{width:100%;height:100%;margin:0}.mobile-carousel{overscroll-behavior:contain;scrollbar-width:none;-webkit-user-select:none;user-select:none;width:100%;min-width:0;max-width:100%;display:block;position:relative;overflow:auto}.mobile-carousel::-webkit-scrollbar{display:none}.mobile-carousel{touch-action:pan-y;overflow:auto hidden}.mobile-carousel[data-dragging=true]{cursor:none}.mobile-carousel-content{width:max-content;min-width:100%;transform:translateX(var(--mobile-carousel-overdrag));will-change:transform;display:flex}.mobile-carousel-scrollbar{z-index:4;opacity:0;pointer-events:none;transition:opacity .15s;position:absolute;inset:0}.mobile-carousel-scrollbar[data-visible=true]{opacity:1}.mobile-carousel-scrollbar-thumb{background:#00000059;border-radius:999px;height:3px;position:absolute;bottom:4px;right:4px}body{min-width:320px;overflow:hidden}button,input,textarea{font:inherit}button{cursor:pointer}.phone-stage{place-items:center;width:100%;height:100%;padding:24px;display:grid;position:relative}.device-menu-bar{z-index:100;border-radius:12px;padding:3px;position:absolute;top:18px;right:18px}.device-picker-trigger{color:#151515;background:0 0;border:0;border-radius:9px;align-items:center;gap:10px;height:34px;padding:0 10px 0 12px;font:600 14px/1 ui-sans-serif,system-ui,sans-serif;display:flex}.device-picker-trigger:hover,.device-picker-trigger[data-state=open]{background:#0000000e}.device-picker-trigger:focus-visible{outline-offset:2px;outline:2px solid #000000b8}.device-picker-menu{z-index:200;min-width:168px;transform-origin:var(--radix-dropdown-menu-content-transform-origin);background:#fffffffa;border-radius:12px;padding:3px;animation:.12s ease-out device-menu-in;box-shadow:0 0 1px #0000000f,0 0 0 1px #00000014,0 4px 4px #0000000d}.device-picker-item{color:#181818;-webkit-user-select:none;user-select:none;border-radius:8px;outline:none;justify-content:space-between;align-items:center;height:34px;padding:0 9px 0 10px;font:500 14px/1 ui-sans-serif,system-ui,sans-serif;display:flex}.device-picker-item[data-highlighted]{background:#f0f0f0}.device-picker-item[data-state=checked]{font-weight:600}.device-picker-check{color:#181818;place-items:center;display:grid}@keyframes device-menu-in{0%{opacity:0;transform:scale(.98)translateY(-2px)}to{opacity:1;transform:scale(1)translateY(0)}}.phone-scale-box{position:relative}.phone-device{transform-origin:0 0;-webkit-user-select:none;user-select:none;position:absolute;top:0;left:0}.phone-bezel{object-fit:contain;z-index:2;-webkit-user-drag:none;pointer-events:none;width:100%;height:100%;display:block;position:absolute;inset:0}.device-screen{cursor:none;z-index:1;-webkit-user-select:none;user-select:none;background:#fff;border-radius:42px;position:absolute;overflow:hidden;box-shadow:inset 0 0 0 1px #00000014}.device-camera{z-index:75;pointer-events:none;background:#050505;border-radius:50%;display:block;position:absolute;box-shadow:inset 0 0 0 1px #ffffff14}.device-screen,.device-screen *{cursor:none!important}.device-screen img,.keyboard-asset{-webkit-user-drag:none;-webkit-user-select:none;user-select:none}.device-screen input,.device-screen textarea,.device-screen select,.device-screen option,.device-screen [contenteditable=true]{-webkit-user-select:auto;user-select:auto}.device-screen:active,.device-screen:active *,.device-screen input,.device-screen textarea,.device-screen button,.device-screen a,.device-screen [role=button]{cursor:none!important}.device-screen[data-cursor-debug=true],.device-screen[data-cursor-debug=true] *{cursor:default!important}.device-screen :focus,.device-screen :focus-visible{box-shadow:none!important;outline:0!important}.flow-stack,.flow-scenes,.flow-screen,.mobile-app-viewport{position:absolute;inset:0}.mobile-app-viewport[data-platform=android][data-keyboard-visible=false]{bottom:var(--device-safe-area-bottom,48px)}.flow-stack{--flow-header-height:0px;--flow-header-content-height:0px;--flow-header-safe-area:0px;--flow-footer-height:0px;--keyboard-height:0px;touch-action:pan-y;background:0 0;overflow:hidden}.flow-fixed-header{z-index:12;height:var(--flow-header-height);padding-top:var(--flow-header-safe-area);box-sizing:border-box;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border-bottom:0;position:absolute;top:0;left:0;right:0}.flow-fixed-footer{z-index:12;right:0;bottom:var(--keyboard-height);height:var(--flow-footer-height);background:0 0;transition:bottom .26s cubic-bezier(.2,.8,.2,1);position:absolute;left:0}.flow-scenes{top:var(--flow-header-height);bottom:0;overflow:hidden}.flow-screen{will-change:transform;background:0 0;overflow:hidden}.mobile-page{--mobile-safe-area-height:var(--device-safe-area-bottom,34px);--keyboard-height:0px;position:absolute;inset:0}.mobile-page[data-keyboard-visible=true],.mobile-app-viewport[data-platform=android] .mobile-page{--mobile-safe-area-height:0px}.mobile-scroll{top:0;right:0;bottom:var(--keyboard-height);-webkit-overflow-scrolling:touch;overscroll-behavior:contain;scrollbar-width:none;touch-action:none;-webkit-user-select:none;user-select:none;transition:bottom .26s cubic-bezier(.2,.8,.2,1);position:absolute;left:0;overflow:hidden auto}.mobile-scroll::-webkit-scrollbar{display:none}.mobile-scroll[data-dragging=true]{cursor:none}.mobile-cursor{z-index:80;opacity:0;pointer-events:none;will-change:transform;background:radial-gradient(circle at 50% 44%,#ffffffb3 0 34%,#ffffff8a 58%,#eeeeee7a 100%);border:.5px solid #0000001f;border-radius:999px;width:48px;height:48px;transition:opacity 90ms,background 80ms,box-shadow 80ms;position:absolute;top:0;left:0;box-shadow:inset 0 1px 2px #fff9,inset 0 -5px 10px #0000000d,inset 0 0 0 1px #00000006}.mobile-cursor:before{content:"";pointer-events:none;background:linear-gradient(#ffffff61,#fff0);border-radius:999px;width:32px;height:17px;position:absolute;top:3px;left:50%;transform:translate(-50%)}.mobile-cursor:after{border-radius:inherit;content:"";pointer-events:none;position:absolute;inset:0;box-shadow:inset 1px 0 3px #ffffff47,inset -1px 0 3px #00000005}.mobile-cursor-hotspot{pointer-events:none;background:#ffffffd1;border:1px solid #007afff2;border-radius:999px;width:9px;height:9px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 1px #ffffffbf,0 0 0 3px #007aff29}.mobile-cursor-hotspot:before,.mobile-cursor-hotspot:after{content:"";background:#007afff2;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.mobile-cursor-hotspot:before{width:17px;height:1px}.mobile-cursor-hotspot:after{width:1px;height:17px}.mobile-cursor[data-visible=true]{opacity:1}.mobile-cursor[data-active=true]{background:radial-gradient(circle at 50% 55%,#e8e8e894 0 30%,#f8f8f880 62%,#ffffffad 100%);box-shadow:inset 0 3px 7px #00000014,inset 0 -4px 8px #ffffff57,inset 0 0 0 1px #00000008}.mobile-cursor[data-active=true]:before{background:linear-gradient(#0000000e,#0000)}.mobile-cursor[data-active=true]:after{box-shadow:inset 0 5px 9px #0000000b,inset 0 -3px 7px #ffffff47}.mobile-scroll-content{will-change:transform;grid-template-columns:minmax(0,1fr);gap:0;min-width:0;padding:0;display:grid}.app-screen{background:#fff}.mobile-scrollbar{z-index:9;top:4px;right:5px;bottom:calc(var(--mobile-safe-area-height) + var(--keyboard-height) + 4px);opacity:0;pointer-events:none;width:4px;transition:bottom .26s cubic-bezier(.2,.8,.2,1),opacity .18s;position:absolute}.mobile-page[data-keyboard-dragging=true] .mobile-scroll,.mobile-page[data-keyboard-dragging=true] .mobile-scrollbar,.flow-stack[data-keyboard-dragging=true] .flow-fixed-footer{transition:none}.mobile-scrollbar[data-visible=true]{opacity:1}.mobile-scrollbar-thumb{background:#00000047;border-radius:999px;width:4px;min-height:36px;transition:background .12s;box-shadow:0 0 0 1px #ffffff2e}.status-bar{z-index:72;color:#050505;pointer-events:none;background:0 0;grid-template-columns:1fr auto;align-items:center;height:54px;padding:10px 34px 0 36px;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Helvetica Neue,Arial,sans-serif;display:grid;position:absolute;top:0;left:0;right:0}.device-screen[data-device=pixel-10] .status-bar{align-items:start;height:auto;padding:32px 32px 0;font-family:Roboto,Arial,sans-serif}.status-time{text-align:center;letter-spacing:0;justify-self:start;min-width:58px;font-size:15px;font-weight:600;line-height:1}.status-indicators{justify-self:end;align-items:center;display:flex}.status-indicator-svg{display:block}.status-indicator-svg[data-platform=ios]{width:79px;height:13px}.status-indicator-svg[data-platform=android]{width:50px;height:14px}.device-screen[data-device=pixel-10] .status-time{font-weight:500;transform:translateY(2px)}.home-indicator-svg{z-index:70;width:100%;height:var(--device-safe-area-bottom,34px);pointer-events:none;display:block;position:absolute;bottom:0;left:0;right:0}.android-navigation-bar{z-index:70;width:428px;height:var(--device-safe-area-bottom,48px);pointer-events:none;-webkit-user-drag:none;display:block;position:absolute;bottom:-1px;left:-1px}h1,h2,p{margin:0}h1{letter-spacing:0;font-size:26px;line-height:1.08}h2{font-size:15px}p{color:#555;font-size:14px;line-height:1.45}.field-label{color:#555;font-size:13px;font-weight:800}.mobile-field{gap:8px;display:grid}.mobile-field input{color:#151515;background:#fff;border:1px solid #0000001a;border-radius:8px;outline:0;width:100%;min-height:44px;padding:0 12px}.mobile-field input:focus{box-shadow:none;border-color:#00000029}.device-screen .mobile-field input:focus,.device-screen .mobile-field input:focus-visible{border-color:#0000001f;box-shadow:none!important;outline:0!important}.sheet-overlay{z-index:20;background:#00000057;position:absolute;inset:0}.bottom-sheet{z-index:21;touch-action:none;background:#fff;border-radius:22px 22px 0 0;flex-direction:column;min-height:260px;display:flex;position:absolute;left:0;right:0;overflow:hidden;box-shadow:0 -16px 48px #0003}.sheet-handle-zone{touch-action:none;place-items:center;height:30px;display:grid}.sheet-handle{background:#c9c9c4;border-radius:999px;width:42px;height:5px}.sheet-header{gap:4px;padding:0 18px 14px;display:grid}.sheet-title{margin:0;font-size:18px;font-weight:900}.sheet-description{color:#737373;margin:0;font-size:13px;line-height:1.35}.sheet-content{padding:0 18px 24px;overflow:auto}.keyboard-dock{z-index:30;height:339px;box-shadow:none;pointer-events:none;will-change:transform;background:#d8d9de;border-radius:32px 32px 0 0;padding:0;position:absolute;bottom:-1px;left:0;right:0;overflow:hidden}.keyboard-dock[data-platform=android]{background:#f3f2f6;border-radius:0;box-shadow:0 -1px 2px #00000014}.keyboard-dock[data-visible=true]{pointer-events:auto}.keyboard-asset{z-index:1;border-radius:inherit;object-fit:cover;object-position:center bottom;-webkit-user-drag:none;pointer-events:none;width:100%;height:100%;display:block;position:relative}.keyboard-dock[data-platform=android] .keyboard-asset{object-fit:fill;border-radius:0}:root{--pine:#344e40;--pine-bg:#60796a;--pine-soft:#60796a;--ink:#28312b;--muted:#48564d;--paper:#f7f8f4;--sage:#e8ede7;--lime:#f1dc83;--line:#dfe5dc;--control-line:#7a8f80;--surface-soft:#f1f4ef;--focus:#60796a;--on-pine-muted:#fff}.fitness-app{background:var(--paper);color:var(--ink);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;font-size:14px;line-height:1.5;position:absolute;inset:0}.fitness-app *{box-sizing:border-box}.fitness-app button,.fitness-app input,.fitness-app textarea{font:inherit}.fitness-app button{cursor:pointer}.fitness-app button:focus-visible,.btn:focus-visible,.choices button:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.fitness-app button:disabled{opacity:.45;cursor:not-allowed}.fitness-app img{object-fit:cover;max-width:100%}.fitness-scroll{background:var(--paper)}.app-content{padding:calc(var(--device-safe-area-top,54px) + 12px) 22px 42px;min-height:100%;color:var(--ink)}.primary-page{padding-bottom:calc(var(--mobile-safe-area-height) + 90px)}.secondary-page{padding-top:calc(var(--device-safe-area-top,54px) + 48px);padding-bottom:calc(var(--mobile-safe-area-height) + 32px)}.login-page{padding-top:var(--device-safe-area-top,54px)}.fixed-header{top:var(--device-safe-area-top,54px);z-index:12;background:var(--paper);height:44px;position:absolute;left:0;right:0}.back-header{align-items:center;gap:14px;height:44px;padding:0 12px;display:flex}.back-header span{font-weight:600}.icon-btn{width:40px;height:40px;color:inherit;background:0 0;border:0;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.icon-btn:hover{background:color-mix(in srgb, var(--pine-bg) 3.92%, transparent)}.page-heading{justify-content:space-between;align-items:center;gap:12px;margin:0 0 21px;display:flex}.page-heading h1{letter-spacing:-.9px;white-space:pre-line;color:var(--ink);margin:0;font-size:26px;font-weight:750;line-height:1.35}.page-heading p{color:var(--muted);margin:7px 0 0;font-size:13px;line-height:1.55}h2{margin:0;font-size:18px;font-weight:700;line-height:1.4}h3{margin:0;font-size:16px}p{line-height:1.65}.muted{color:var(--muted);font-size:13px}.section{margin:23px 0}.section-heading{justify-content:space-between;align-items:center;gap:8px;margin-bottom:13px;display:flex}.section-heading h2{font-size:18px}.card{border:1px solid var(--line);background:#fff;border-radius:14px;margin:14px 0;padding:16px}.card p{margin:5px 0 10px}.card>.row{padding:10px 0}.card .row:last-child{border-bottom:0}.btn{width:100%;min-height:48px;font:inherit;cursor:pointer;color:var(--pine);border:1px solid #0000;border-radius:12px;justify-content:center;align-items:center;gap:9px;margin:12px 0;padding:12px 17px;font-size:15px;font-weight:650;text-decoration:none;transition:background .15s,transform .15s;display:flex}.btn:active{transform:scale(.985)}.btn.primary{background:var(--pine-bg);color:#fff}.btn.secondary{border-color:var(--focus);color:var(--pine);background:0 0}.btn.lime{background:var(--lime);color:var(--pine)}.btn.ghost{color:var(--muted);background:0 0}.btn:disabled{opacity:.45;cursor:not-allowed}.btn:hover{filter:brightness(.97)}.choices{gap:8px;margin:12px 0;display:flex}.choices button{border:1px solid var(--line);background:var(--surface-soft);min-height:42px;font:inherit;color:var(--muted);cursor:pointer;border-radius:10px;flex:1;padding:11px 5px;font-size:13px}.choices button.selected{color:#fff;background:var(--pine-bg);border-color:var(--pine)}.choices.wrap{flex-wrap:wrap}.choices.wrap button{flex:0 calc(33.333% - 6px)}.field{color:var(--ink);font:inherit;flex-direction:column;gap:9px;margin:17px 0;display:flex}.field>span{font-size:14px;font-weight:600}.field input,.field textarea{border:1px solid var(--line);color:var(--ink);width:100%;font:inherit;background:#fff;border-radius:11px;outline:none;min-height:48px;padding:13px 14px;font-size:14px}.field textarea{resize:none;height:116px}.field input:focus,.field textarea:focus{border-color:var(--pine);box-shadow:0 0 0 2px color-mix(in srgb, var(--pine) 7.06%, transparent)}.field input::placeholder,.field textarea::placeholder{color:var(--muted)}.error{color:#a84a2b;font-size:13px}.notice{background:var(--sage);color:var(--pine);border-radius:11px;align-items:flex-start;gap:9px;margin:16px 0;padding:13px 14px;font-size:12px;line-height:1.7;display:flex}.notice>svg{flex-shrink:0;margin-top:2px}.notice.warning{color:#805b20;background:#fff4de}.row{border:0;border-bottom:1px solid var(--line);text-align:left;width:100%;color:var(--ink);font:inherit;background:0 0;align-items:center;gap:12px;padding:15px 0;display:flex}.row-text{flex:1;min-width:0}.row-text strong{font-size:14px;font-weight:650;display:block}.row-text small{color:var(--muted);margin-top:3px;font-size:12px;line-height:1.5;display:block}.row-icon{background:var(--sage);width:35px;min-width:35px;height:35px;color:var(--pine);border-radius:9px;place-items:center;display:grid}.row-photo{object-fit:cover;border-radius:8px;width:65px;height:57px}.stats{justify-content:space-around;gap:10px;display:flex}.stats>div{text-align:center;flex:1}.stats b{font-variant-numeric:tabular-nums;letter-spacing:-1px;font-size:26px;display:block}.stats small{color:var(--muted);margin-top:3px;font-size:11px;display:block}.switch-row{justify-content:space-between}.switch{background:var(--sage);border-radius:20px;flex-shrink:0;width:42px;height:25px;padding:3px;transition:background .2s;display:block}.switch>span{background:#fff;border-radius:50%;width:19px;height:19px;transition:transform .2s;display:block;box-shadow:0 1px 3px #0002}.switch.on{background:var(--pine-bg)}.switch.on>span{transform:translate(17px)}.bottom-tabs{z-index:15;box-shadow:0 -1px 0 var(--line);background:#fff;min-height:62px;padding:10px 14px 6px;display:flex;position:absolute;left:0;right:0}.bottom-tabs:after{content:"";background:#fff;height:40px;position:absolute;top:100%;left:0;right:0}.bottom-tabs button{color:var(--muted);background:0 0;border:0;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:4px;padding:3px;font-size:10px;display:flex}.bottom-tabs button.selected{color:var(--pine);font-weight:750}.bottom-tabs button.selected svg{stroke:var(--pine);stroke-width:.5px}.toast{z-index:60;background:var(--pine-bg);color:#fff;box-shadow:0 8px 25px color-mix(in srgb, var(--pine) 14.51%, transparent);pointer-events:none;border:1px solid #ffffff40;border-radius:12px;align-items:center;gap:8px;padding:13px 17px;font-size:13px;display:flex;position:absolute;left:22px;right:22px}.toast svg{flex-shrink:0}.home-top{justify-content:space-between;align-items:center;height:24px;margin-bottom:4px;display:flex}.home-top>span{align-items:center;gap:8px;font-size:11px;display:flex}.home-top>span svg{color:#caa522}.avatar{z-index:1;border:2px solid #fff;border-radius:50%;width:41px;height:41px;margin-top:20px;padding:0;overflow:hidden}.avatar img{object-fit:cover;object-position:65% 23%;transform-origin:65% 23%;width:100%;height:100%;transform:scale(2.2)}.home-top+.page-heading{margin-bottom:17px}.home-top+.page-heading h1{font-size:28px;line-height:1.3}.home-top+.page-heading p{margin-top:4px;font-size:12px}.training-hero{background:var(--pine-bg);color:#fff;border-radius:15px;height:235px;position:relative;overflow:hidden}.training-hero>img{object-fit:cover;object-position:65% 55%;opacity:.88;width:55%;height:100%;position:absolute;right:0}.hero-copy{isolation:isolate;width:100%;height:100%;padding:21px 18px;position:relative}.hero-copy:before{content:"";z-index:-1;background:var(--pine-bg);position:absolute;inset:0 50% 0 0}.hero-copy h2{letter-spacing:-1px;text-shadow:0 1px 8px var(--pine);margin-top:8px;font-size:24px;line-height:1.3}.hero-copy .eyebrow{font-size:12px}.hero-copy p{text-shadow:0 1px 8px var(--pine);margin:6px 0 15px;font-size:11px}.hero-copy .btn{width:max-content;min-height:41px;margin:0;padding:10px 15px;font-size:13px}.hero-copy>small{opacity:.85;margin-top:19px;font-size:10px;line-height:1.7;display:block}.weekly-progress{justify-content:space-between;align-items:center;margin:14px 0;padding:14px;font-size:12px;display:flex}.weekly-progress b{font-variant-numeric:tabular-nums;font-size:18px}.weekly-progress>small{color:var(--muted);font-size:11px;line-height:1.6}.progress-dots{gap:13px;margin-top:12px;display:flex}.progress-dots>span{border:1px solid var(--line);border-radius:50%;place-items:center;width:25px;height:25px;display:grid;position:relative}.progress-dots>span:not(:last-child):after{content:"";background:var(--line);width:13px;height:1px;position:absolute;left:24px}.progress-dots>span.done{background:var(--pine-bg);color:#fff;border-color:var(--pine)}.agenda-item{align-items:center;gap:10px;display:flex}.agenda-item time{flex-shrink:0;width:43px;padding-left:7px;font-size:11px;font-weight:650;position:relative}.agenda-item time:before{content:"";background:var(--pine-bg);border-radius:50%;width:5px;height:5px;position:absolute;top:6px;left:-5px}.agenda-item .row{background:#fff;border:0;border-radius:10px;margin:3px 0;padding:10px}.agenda-item .row-photo{width:42px;height:42px}.agenda-item .row-text strong{font-size:13px}.agenda-item .row-text small{font-size:10px}.coach-teaser{background:var(--sage);text-align:left;width:100%;color:var(--pine);border:0;border-radius:12px;align-items:center;gap:10px;padding:13px 12px;display:flex}.coach-teaser>span:nth-child(2){flex:1}.coach-teaser b{font-size:12px}.coach-teaser small{color:var(--muted);margin-top:3px;font-size:10px;display:block}.ai-mark{background:var(--pine-bg);color:#fff;border-radius:10px;place-items:center;width:34px;height:34px;display:grid}.week-strip{justify-content:space-between;gap:5px;margin:26px 0 22px;display:flex}.week-strip button{color:var(--ink);background:0 0;border:0;border-radius:10px;flex-direction:column;flex:1;align-items:center;gap:10px;padding:5px;display:flex}.week-strip small{color:var(--muted);font-size:11px}.week-strip b{border-radius:8px;place-items:center;width:32px;height:34px;font-size:16px;display:grid}.week-strip .selected b{background:var(--pine-bg);color:#fff}.timeline{gap:12px;height:328px;margin:24px 0 20px;display:flex}.time-labels{width:35px;color:var(--muted);flex-direction:column;justify-content:space-between;font-size:10px;display:flex}.timeline-events{border-left:1px solid var(--line);background:repeating-linear-gradient(to bottom,transparent 0,transparent 81px,var(--sage) 81px,var(--sage) 82px);flex:1;position:relative}.event{text-align:left;color:var(--ink);background:#e9eaed;border:0;border-radius:5px;align-items:center;gap:9px;padding:11px;font-size:12px;display:flex;position:absolute;left:6px;right:0}.event small{color:var(--muted);margin-top:4px;font-size:10px;display:block}.class-event{height:61px;top:7px}.meeting-event{height:61px;top:92px}.workout-event{background:var(--sage);border-left:3px solid var(--pine);gap:7px;padding:13px 8px;top:258px}.workout-event b{flex:1;font-size:11px}.now-line{background:#e36d64;height:1px;position:absolute;top:205px;left:0;right:0}.now-line>span{color:#c65a52;background:var(--paper);font-size:9px;position:absolute;top:-7px;left:-45px}.weather-note{background:var(--sage);text-align:left;width:100%;color:var(--pine);border:0;border-radius:11px;align-items:center;gap:12px;padding:14px 12px;display:flex}.weather-note>span{flex:1}.weather-note b{font-size:12px}.weather-note small{color:var(--muted);margin-top:5px;font-size:10px;display:block}.upload-box{background:var(--surface-soft);border:1px dashed var(--focus);width:100%;color:var(--pine);text-align:left;border-radius:12px;justify-content:center;align-items:center;gap:16px;padding:19px 14px;display:flex}.upload-box small{color:var(--muted);margin-top:5px;font-size:11px;display:block}.upload-box input[type=file]{max-width:100%;font-size:11px}.timetable{border:1px solid var(--line);border-radius:8px;grid-template-columns:39px repeat(5,minmax(0,1fr));font-size:9px;display:grid;overflow:hidden}.timetable>div,.timetable>span,.timetable>button{border:0;border-bottom:1px solid var(--sage);border-right:1px solid var(--sage);text-align:center;word-break:break-all;min-height:40px;color:var(--muted);background:#fff;justify-content:center;align-items:center;padding:4px;font-size:9px;display:flex}.timetable .table-head{background:var(--sage);min-height:28px}.timetable button{background:var(--surface-soft);color:var(--ink)}.task-row{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:6px 0;font-size:12px;display:flex}.task-row>span{flex:1}.checkbox{border:1px solid var(--focus);background:#fff;border-radius:5px;place-items:center;width:20px;height:20px;padding:0;display:grid}.checkbox.checked{background:var(--pine-bg);color:#fff}.strike{color:var(--muted);text-decoration:line-through}.import-preview{object-fit:contain;width:100%;max-height:180px;margin:10px 0}.sage-panel{background:var(--sage);color:var(--pine);border-radius:10px;padding:16px}.sage-panel p{font-size:12px}.adjust-arrow{justify-content:center;margin:8px 0;display:flex;transform:rotate(90deg)}.workout-cover{height:208px;margin:0 -22px 18px;position:relative}.workout-cover>img{object-fit:cover;width:100%;height:100%}.cover-save{width:36px;height:36px;color:var(--pine);background:#ffffffed;border:0;border-radius:50%;place-items:center;display:grid;position:absolute;top:12px;right:14px}.cover-save.saved{background:var(--lime)}.phase-grid{gap:8px;margin:20px 0;display:flex}.phase-grid>div{background:var(--sage);color:var(--pine);border-radius:10px;flex-direction:column;flex:1;align-items:center;gap:7px;padding:13px;display:flex}.phase-grid small{font-size:11px}.phase-grid b{font-size:14px}.exercise-media{background:var(--sage);border:0;border-radius:12px;width:100%;height:270px;margin-bottom:14px;padding:0;position:relative;overflow:hidden}.exercise-media>img{object-fit:cover;width:100%;height:100%}.media-badge{background:color-mix(in srgb, var(--pine-bg) 69.02%, transparent);color:#fff;border-radius:6px;padding:5px 9px;font-size:11px;position:absolute;top:10px;right:10px}.play-circle{color:#fff;background:#ffffff35;border:1px solid #fff;border-radius:50%;place-items:center;width:59px;height:59px;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.cue-list>div{align-items:flex-start;gap:14px;margin:23px 0;display:flex}.cue-list b{background:var(--pine-bg);color:#fff;border-radius:50%;flex-shrink:0;place-items:center;width:27px;height:27px;display:grid}.cue-list p{margin:2px 0;font-size:14px;font-weight:600}.sheet-photo{object-fit:cover;border-radius:10px;width:100%;max-height:210px}.completion-badge{background:var(--lime);color:var(--pine);border-radius:50%;place-items:center;width:86px;height:86px;margin:28px auto;display:grid}.small-check{background:var(--lime);color:var(--pine);border-radius:50%;place-items:center;width:28px;height:28px;display:grid}.workout-mode,.dark-scroll{background:var(--pine-bg)}.active-page{padding:calc(var(--device-safe-area-top,54px) + 5px) 22px calc(var(--mobile-safe-area-height) + 20px);color:#fff}.active-toolbar{justify-content:space-between;align-items:center;margin-bottom:10px;font-size:12px;display:flex}.active-photo{border-radius:12px;height:270px;position:relative;overflow:hidden}.active-photo img{object-fit:cover;width:100%;height:100%}.active-photo b{background:color-mix(in srgb, var(--pine-bg) 62.75%, transparent);border-radius:5px;padding:4px 7px;font-size:14px;position:absolute;bottom:10px;left:12px}.active-photo small{background:color-mix(in srgb, var(--pine-bg) 62.75%, transparent);border-radius:5px;padding:3px 7px;font-size:10px;position:absolute;top:10px;right:10px}.timer{letter-spacing:-3px;text-align:center;font-variant-numeric:tabular-nums;margin-top:18px;font-size:76px;font-weight:750;line-height:1.1}.timer-caption{text-align:center;margin-top:6px;font-size:16px}.step-track{gap:7px;margin:18px 0;display:flex}.step-track span{background:#ffffff23;border-radius:8px;flex:1;height:7px}.step-track .done{background:var(--lime)}.next-exercise{color:#fff;text-align:left;background:#ffffff0d;border:1px solid #ffffff25;border-radius:10px;align-items:center;gap:12px;width:100%;padding:9px;font-size:12px;display:flex}.next-exercise img{border-radius:5px;width:58px;height:45px}.next-exercise span{flex:1}.player-controls{justify-content:center;align-items:center;gap:35px;margin:21px 0;display:flex}.player-controls>.icon-btn{border:1px solid #ffffff50;border-radius:50%;width:49px;height:49px}.pause-button{background:var(--lime);width:75px;height:75px;color:var(--pine);border:0;border-radius:50%;place-items:center;display:grid}.active-footer{justify-content:space-around;margin-top:16px;display:flex}.active-footer button{color:#fff;background:0 0;border:0;align-items:center;gap:8px;font-size:12px;display:flex}.intensity-scale{justify-content:space-between;gap:10px;margin:18px 0;display:flex}.intensity-scale button{border:1px solid var(--line);width:39px;height:39px;color:var(--pine);background:#fff;border-radius:50%}.intensity-scale button.selected{background:var(--pine-bg);color:#fff}.scale-labels{color:var(--muted);justify-content:space-between;font-size:12px;display:flex}.char-count{text-align:right;color:var(--muted);margin-top:-10px;font-size:11px;display:block}.body-map{object-fit:contain;width:100%;height:185px;margin:5px 0 12px}.status-pill{background:var(--sage);color:var(--pine);border-radius:20px;align-items:center;gap:7px;padding:7px 12px;font-size:12px;display:inline-flex}.compare-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:8px;padding:12px 0;font-size:12px;display:flex}.compare-row:last-child{border:0}.compare-row>b:last-child{color:var(--pine)}.mini-exercises{gap:8px;display:flex}.mini-exercises img{object-fit:cover;border-radius:8px;width:calc(33.333% - 6px);height:89px}.demo-label{color:var(--muted);background:var(--surface-soft);border-radius:5px;margin-top:-8px;padding:4px 8px;font-size:10px;display:inline-block}.chat-messages{flex-direction:column;gap:18px;margin:24px 0;display:flex}.message{align-self:flex-start;max-width:92%}.message>p{border:1px solid var(--line);background:#fff;border-radius:3px 14px 14px;margin:0;padding:14px;font-size:14px;line-height:1.7}.message.user{align-self:flex-end}.message.user>p{background:var(--pine-bg);color:#fff;border-color:var(--pine);border-radius:14px 3px 14px 14px}.chat-plan{border:1px solid var(--line);background:#fff;border-radius:12px;margin-top:10px;padding:14px}.chat-plan>img{float:left;border-radius:7px;width:57px;height:72px;margin:0 12px 14px 0}.chat-plan h3{padding-top:8px;font-size:15px}.chat-plan>small{color:var(--muted);font-size:11px}.chat-plan>.row{clear:both}.chat-plan .row{padding:9px 0}.chat-plan .btn{min-height:40px;padding:9px;font-size:13px}.coach-page{padding-bottom:140px}.chat-suggestions{flex-wrap:wrap;gap:7px;display:flex}.chat-suggestions button{border:1px solid var(--line);color:var(--pine);background:#fff;border-radius:8px;padding:9px;font-size:11px}.chat-composer{z-index:20;border:1px solid var(--line);box-shadow:0 2px 15px color-mix(in srgb, var(--pine) 3.53%, transparent);background:#fff;border-radius:30px;align-items:center;gap:8px;padding:8px;transition:bottom .25s;display:flex;position:absolute;left:16px;right:16px}.chat-composer input{min-width:0;color:var(--ink);background:0 0;border:0;outline:none;flex:1;padding:8px 6px;font-size:13px}.chat-composer button{background:var(--lime);width:37px;height:37px;color:var(--pine);border:0;border-radius:50%;place-items:center;display:grid}.preview-directory{width:220px;color:var(--pine);z-index:20;flex-direction:column;font-family:Inter,Microsoft YaHei,sans-serif;display:flex;position:fixed;top:38px;bottom:32px;left:28px}.preview-brand{align-items:center;gap:11px;display:flex}.preview-brand>span{font-size:16px;font-weight:700}.preview-brand small{letter-spacing:1.5px;color:var(--muted);margin-top:6px;font-size:8px;font-weight:500;display:block}.preview-directory>p{color:var(--muted);margin:18px 0 21px;font-size:10px}.directory-list{scrollbar-width:thin;flex:1;padding-right:14px;overflow-y:auto}.directory-group{margin-bottom:18px}.directory-group h3{letter-spacing:.8px;color:var(--muted);margin:0 0 7px;font-size:10px;font-weight:500}.directory-group button{color:var(--muted);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:7px;justify-content:space-between;align-items:center;width:100%;padding:7px 10px;font-size:12px;display:flex}.directory-group button.current{background:var(--sage);color:var(--pine);font-weight:700}.directory-group button:hover{background:var(--surface-soft);color:var(--pine)}.preview-note{border-top:1px solid var(--sage);margin-top:14px;padding-top:14px;font-size:11px}.preview-note small{color:var(--muted);margin:8px 0 0;font-size:9px;line-height:1.7;display:block}.live-dot{background:var(--pine-soft);border-radius:50%;width:6px;height:6px;margin-right:7px;display:inline-block}.mobile-directory-toggle{border:1px solid var(--sage);color:var(--pine);z-index:40;background:#fff;border-radius:20px;align-items:center;gap:6px;padding:8px 12px;font-size:11px;display:none;position:fixed;bottom:12px;left:12px}@media (width<=1050px){.preview-directory{display:none}.mobile-directory-toggle{display:flex}}@media (width>=1500px){.preview-directory{width:240px;left:6vw}}@media (prefers-reduced-motion:reduce){.fitness-app *{transition:none!important;animation:none!important}}.onboarding-photo{margin-left:-22px;margin-right:-22px}.onboarding-login-panel{margin-left:-22px;margin-right:-22px;padding-left:22px;padding-right:22px}.onboarding-goal{background:var(--surface-soft)}.onboarding-photo:after{display:none}.hero-copy p,.hero-copy small{color:var(--on-pine-muted)}.training-hero{height:213px}.hero-copy{padding-top:18px}.hero-copy>small{margin-top:14px}.weekly-progress{margin:12px 0;padding:12px}.progress-dots{margin-top:9px}.primary-page>.section{margin:14px 0}.primary-page>.section .section-heading{margin-bottom:8px}.agenda-item .row{padding:8px}.timeline{height:278px;margin:18px 0}.timeline-events{background:repeating-linear-gradient(to bottom,transparent 0,transparent 68px,var(--sage) 68px,var(--sage) 69px)}.meeting-event{top:77px}.now-line{top:174px}.workout-event{top:219px}.week-strip{margin:20px 0 17px}.weather-note{padding:12px}.food-page{gap:10px}.food-page>.page-heading{margin:0 0 6px}.food-page>.choices{margin:0}.food-page>.btn{min-height:44px;margin:0}.food-nutrition{padding:13px 15px}.food-target b{font-size:33px}.food-macros{gap:15px;margin-top:10px}.food-macros span{font-size:11px}.food-hero{height:174px}.food-caption p{margin:5px 0 8px;font-size:12px}.food-tags span{padding:5px 8px;font-size:11px}.food-page .food-caption h2{font-size:20px}.food-page>.section{margin:5px 0}.food-page>.notice{margin:4px 0}.food-page>.food-actions .btn{margin:0}.profile-module{gap:12px}.profile-module>.page-heading{margin-bottom:8px}.profile-module>.card{margin:6px 0}.profile-person>img{width:74px;height:74px}.profile-motivation{background:var(--pine-bg);border-radius:15px;padding:20px 18px 15px}.profile-motivation h2{margin:12px 0 5px}.profile-motivation>p{margin-bottom:16px}.profile-motivation .stats{padding-top:14px}.profile-module .row{padding:12px 0}.profile-module .profile-report{margin-top:0}.profile-module>.choices{margin:0}.profile-module .profile-bar-area>span{background:var(--pine-bg)}[data-route=feedback] .page-heading{margin-bottom:15px}[data-route=feedback] .card{margin:12px 0;padding:10px 12px}[data-route=feedback] .section{margin:19px 0}[data-route=feedback] .intensity-scale,[data-route=feedback] .field{margin:13px 0}[data-route=feedback] textarea{height:86px}[data-route=feedback] .row{padding:9px 0}[data-route=feedback] .row-photo{width:55px;height:48px}[data-route=feedback] .choices{margin:8px 0}[data-route=feedback] .choices button{min-height:38px;padding:8px 5px}.training-hero>img{object-fit:contain;object-position:right bottom;opacity:1;width:63%;height:110%;top:-8px;right:-8px}.hero-copy:before{display:none}.hero-copy h2{font-size:23px}.hero-copy p{font-size:10px}.chat-composer input,.chat-composer button{font-family:Microsoft YaHei,sans-serif}.chat-composer button:disabled{opacity:.5}.fitness-app[data-route=home] .training-hero{height:200px}.fitness-app[data-route=home] .weekly-progress{margin:10px 0;padding:10px}.fitness-app[data-route=home] .page-heading{margin-bottom:16px}.fitness-app[data-route=home] .coach-teaser{margin-top:8px;padding:10px 12px}.workout-cover>img{object-position:50% 35%}.active-photo>img{object-position:50% 30%}.onboarding-body-fields .field{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;margin:0;padding:9px 0;display:flex}.onboarding-body-fields .field:last-child{border-bottom:0}.onboarding-body-fields .field>span{white-space:nowrap;margin:0}.onboarding-body-fields .field input{text-align:right;width:115px}.fitness-app[data-route=body] .onboarding-next{margin-top:18px}.fitness-app[data-route=preferences] .section{margin:15px 0}.fitness-app[data-route=preferences] .section-heading{margin-bottom:9px}.fitness-app[data-route=preferences] .onboarding-steps{margin-bottom:18px}.fitness-app[data-route=meal] .food-detail-image{max-height:220px}.onboarding-body-fields .field{flex-direction:row}.fitness-app[data-route=home] .hero-copy>small{margin-top:8px;line-height:1.5}.fitness-app[data-route=body] .onboarding-steps{margin-bottom:18px}.fitness-app[data-route=body] .onboarding-body-fields{margin:18px 0;padding:10px 16px}.fitness-app[data-route=body] .onboarding-body-fields .field{padding:5px 0}.fitness-app[data-route=body] .onboarding-body-fields input{height:42px;min-height:42px}.app-safe-area-mask{height:var(--device-safe-area-top,54px);z-index:11;background:var(--paper);pointer-events:none;position:absolute;top:0;left:0;right:0}.workout-mode>.app-safe-area-mask{background:var(--pine-bg)}:root .onboarding-steps,:root .onboarding-goal small,:root .onboarding-hint,:root .onboarding-description,:root .onboarding-unit,:root .onboarding-divider,:root .onboarding-agreement,:root .food-caption p,:root .food-summary-link,:root .food-fine,:root .food-shop small,:root .food-shop em,:root .food-shop-name,:root .food-price span,:root .food-ingredients span,:root .food-reason,:root .food-remaining,:root .food-log small,:root .food-breakfast p,:root .profile-person p,:root .profile-muted,:root .profile-column small,:root .profile-weight-line>span,:root .profile-weight-line small,:root .profile-calendar-grid>small,:root .profile-filter,:root .profile-empty,:root .profile-empty>svg,:root .profile-fineprint,:root .profile-sheet>p,:root .coach-starters-title,:root .fitness-app .field input::placeholder,:root .fitness-app .field textarea::placeholder,:root .fitness-app .bottom-tabs button,:root .pose-steps li{color:var(--muted)}:root .onboarding-steps span,:root .onboarding-photo,:root .onboarding-divider:before,:root .onboarding-divider:after,:root .food-macros>div>div,:root .food-hero,:root .food-progress,:root .profile-person>img,:root .profile-month-summary,:root .fitness-app .training-empty .completion-badge,:root .fitness-app .food-intake-progress,:root .pose-steps li:not(:last-child):after,:root .pose-steps li>span{background:var(--sage)}:root .fitness-app .food-intake-progress::-webkit-progress-bar{background:var(--sage)}:root .onboarding-steps .filled,:root .food-progress i,:root .profile-calendar-grid>button.selected,:root .coach-thinking>span,:root .fitness-app .exercise-guide-label{background:var(--pine-bg)}:root .onboarding-goal{border:1px solid var(--sage);background:linear-gradient(115deg,var(--surface-soft),#fff);color:var(--pine)}:root .onboarding-goal.selected{border-color:var(--pine);background:var(--surface-soft)}:root .onboarding-goal-icon,:root .onboarding-photo>div,:root .onboarding-link,:root .food-summary-link>span:last-child,:root .food-summary-link b,:root .food-favorite,:root .food-price strong,:root .food-reason svg,:root .profile-weight .text-button,:root .profile-calendar-grid>button,:root .profile-filter button,:root .profile-empty h3,:root .profile-sheet,:root .coach-thinking,:root .coach-plan-sheet,:root .coach-time-edit,:root .coach-page .demo-label,:root .coach-starters small,:root .coach-secondary-actions button,:root .coach-settings,:root .coach-config-status small,:root .coach-config-help,:root .fitness-app .food-target-caption{color:var(--pine)}:root .onboarding-radio,:root .onboarding-agreement>button>span{border:1px solid var(--focus)}:root .onboarding-goal.selected .onboarding-radio,:root .onboarding-agreement>button>span.checked{background:var(--pine-bg);border-color:var(--pine)}:root .onboarding-photo:after{background:linear-gradient(transparent,var(--surface-soft))}:root .onboarding-photo>div>span,:root .food-favorite.on,:root .profile-calendar-grid .selected i.has-session{background:var(--lime)}:root .onboarding-login-panel,:root .food-tags span,:root .profile-module .profile-help,:root .profile-report .stats,:root .profile-weight-line>div,:root .profile-sheet .stats,:root .coach-plan-compare,:root .coach-starters>button>svg:first-child,:root .coach-config-status{background:var(--surface-soft)}:root .food-nutrition,:root .coach-config-message.success{background:var(--surface-soft);color:var(--pine)}:root .food-hero>span{background:color-mix(in srgb, var(--pine-bg) 72.94%, transparent)}:root .food-filters button,:root .food-log,:root .coach-starters>button{border:1px solid var(--sage);color:var(--pine)}:root .food-filters button.on{border-color:var(--pine);color:var(--pine);background:var(--surface-soft)}:root .food-shop{border-bottom:1px solid var(--sage);color:var(--pine)}:root .food-favorite.on svg{fill:var(--pine)}:root .food-log-placeholder{background:var(--surface-soft);color:var(--muted)}:root .profile-edit{border:1px solid var(--sage);background:var(--surface-soft);color:var(--pine)}:root .profile-motivation{background:linear-gradient(120deg,var(--pine-bg),var(--pine-bg))}:root .profile-eyebrow{color:var(--lime)}:root .profile-motivation>p,:root .profile-motivation .stats small,:root .fitness-app .training-cue,:root .fitness-app .timer-caption{color:var(--on-pine-muted)}:root .profile-chart{border-bottom:1px solid var(--sage);background:repeating-linear-gradient(to top,transparent 0,transparent 39px,color-mix(in srgb, var(--sage) 50.2%, transparent) 40px)}:root .profile-bar-area>span{background:linear-gradient(var(--pine-bg),var(--pine-bg))}:root .profile-weight-line i,:root .profile-calendar-grid i.has-session,:root .profile-done{background:var(--pine-soft)}:root .profile-calendar-grid>button.is-today:not(.selected){box-shadow:inset 0 0 0 1px var(--line)}:root .coach-action{background:var(--sage);color:var(--pine)}:root .coach-meal-option,:root .coach-config-trigger{border:1px solid var(--line);color:var(--pine)}:root .coach-meal-option.chosen{background:var(--sage);border-color:var(--pine)}:root .fitness-app{--muted:#48564d}:root .fitness-app .bottom-tabs button.selected svg{background:var(--sage);box-shadow:0 0 0 5px var(--sage)}:root .fitness-app .intensity-scale button.selected{outline:2px solid var(--focus)}:root .fitness-app button:focus-visible,:root .fitness-app a:focus-visible,:root .fitness-app input:focus-visible,:root .fitness-app textarea:focus-visible,:root .pose-practice .btn:focus-visible,:root .pose-frame-status:focus-visible{outline:3px solid var(--focus)}:root .fitness-app .chat-composer:focus-within{border-color:var(--focus);box-shadow:0 0 0 2px var(--sage)}:root .pose-photo-state,:root .pose-photo-label,:root .pose-frame-message{background:color-mix(in srgb, var(--pine-bg) 85.1%, transparent)}:root .pose-photo-label{background:color-mix(in srgb, var(--pine-bg) 74.12%, transparent)}:root .pose-steps .current>span{background:var(--pine-bg)}:root .fitness-app .food-intake-progress::-webkit-progress-value{background:var(--pine-bg)}:root .fitness-app .hero-copy p,:root .fitness-app .hero-copy small{color:#fff;text-shadow:none;opacity:1}:root .fitness-app .training-hero>img{opacity:1}:root .fitness-app .btn.lime,:root .fitness-app .pause-button,:root .fitness-app .chat-composer button{color:var(--pine);background:var(--lime)}:root .fitness-app .field input,:root .fitness-app .field textarea,:root .fitness-app .choices button,:root .fitness-app .checkbox,:root .fitness-app .onboarding-radio,:root .fitness-app .onboarding-agreement>button>span{border-color:var(--control-line)}:root .fitness-app .choices button.selected,:root .fitness-app .checkbox.checked,:root .fitness-app .onboarding-goal.selected .onboarding-radio,:root .fitness-app .onboarding-agreement>button>span.checked,:root .fitness-app .btn.secondary{border-color:var(--pine-bg)}:root .fitness-app .profile-fineprint,:root .fitness-app input::placeholder,:root .fitness-app textarea::placeholder{color:var(--muted)}:root .fitness-app .media-badge,:root .fitness-app .food-hero>span,:root .fitness-app .pose-photo-state,:root .fitness-app .pose-photo-label,:root .fitness-app .active-photo>b,:root .fitness-app .active-photo>small{background:var(--pine-bg);color:#fff}:root .fitness-app .profile-motivation>p,:root .fitness-app .profile-motivation .stats small,:root .fitness-app .training-cue,:root .fitness-app .timer-caption{color:#fff;opacity:1}:root .fitness-app .progress-dots>span.done{color:var(--pine);background:var(--lime);border-color:var(--pine-bg)}:root .fitness-app .profile-eyebrow{color:#fff}:root .fitness-app .pose-frame-message{background:var(--pine-bg);color:#fff}:root .fitness-app .bottom-tabs button.selected{color:var(--pine-bg)}:root .fitness-app .bottom-tabs button.selected svg{stroke:var(--pine-bg)}:root .fitness-app .row-icon,:root .fitness-app .phase-grid svg,:root .fitness-app .food-reason svg,:root .fitness-app .profile-empty>svg,:root .fitness-app .coach-teaser>svg,:root .preview-brand>svg{color:var(--pine-bg)}:root .fitness-app .ai-mark{background:var(--pine-bg);color:#fff}.local-conditions{min-width:0;color:var(--muted);flex-wrap:wrap;flex:1;align-items:center;gap:5px;font-size:11px;line-height:1.5;display:flex}.local-conditions time{white-space:nowrap;font-variant-numeric:tabular-nums}.local-weather{min-height:32px;color:var(--muted);font-size:inherit;white-space:nowrap;background:0 0;border:0;align-items:center;gap:4px;padding:3px 0;display:inline-flex}.local-weather svg{color:var(--pine-bg);flex-shrink:0}.local-weather-sheet{padding:0 20px 24px}.local-weather-sheet .muted{font-size:12px;line-height:1.8}.local-weather-sheet a{color:var(--pine);text-decoration:underline}.local-weather-result strong{color:var(--ink);font-size:24px}.local-weather-result p{color:var(--muted);font-size:12px}.local-city-search .field{margin-bottom:8px}.local-city-results button{border:0;border-bottom:1px solid var(--line);width:100%;min-height:44px;color:var(--ink);text-align:left;background:0 0;justify-content:space-between;align-items:center;gap:10px;padding:12px 0;font-size:13px;display:flex}.food-order-location{background:var(--surface-soft);border:1px solid var(--line);border-radius:12px;flex-direction:column;gap:6px;padding:14px;display:flex}.food-order-location>strong{color:var(--ink);overflow-wrap:anywhere;font-size:13px}.food-order-location>small{color:var(--muted);font-size:12px}.food-order-location-actions{flex-wrap:wrap;gap:8px;display:flex}.food-order-location-actions .btn{flex:1;min-height:44px;margin:8px 0 0;padding:10px;font-size:12px}.food-order-link-settings{border-top:1px solid var(--line);padding-top:14px}.food-order-link-settings summary{cursor:pointer;min-height:44px;color:var(--pine);align-items:center;font-weight:600;display:flex}.food-order-link-settings .field input{font-size:16px}.food-nearby-location .btn{margin:0}.food-actions>a.btn{text-align:center;flex:1;min-width:0}.food-sheet .food-search-name{background:var(--sage);color:var(--ink);-webkit-user-select:text;user-select:text;overflow-wrap:anywhere;border-radius:10px;padding:14px;font-size:18px;font-weight:650}
