/* Connected application additions; the approved mobile visual system remains intact. */
.form-video{margin:20px 0;padding:18px;border:1px solid var(--line,#dcdcd0);border-radius:14px;background:#eef0e5;display:flex;flex-wrap:wrap;gap:12px;align-items:center}.form-video>div,.form-video>p{width:100%;margin:0}.form-video strong{display:flex;align-items:center;gap:8px;font-size:14px}.form-video .small{font-size:11px;line-height:1.6;overflow-wrap:anywhere}.form-video .btn{min-height:48px;font-size:12px;padding:12px 16px}.upload-video-button{position:relative;cursor:pointer;overflow:hidden}.upload-video-button input[type=file]{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;display:block}.upload-video-button:focus-within{outline:2px solid #b34e2e;outline-offset:3px}.video-upload-status:empty{display:none}.video-upload-status{color:#91452d}.exercise-preview{align-items:flex-start}.exercise-preview>div{min-width:0;flex:1}.exercise-comment{margin-top:20px}.messages{overscroll-behavior:contain}
body{max-width:600px;margin:0 auto;background:var(--bg,#f5f0e8)}
.sidebar{display:none!important}.app-body{margin-left:0!important}.main{padding:20px 22px 105px!important}.topbar{padding:18px 22px!important}.topbar-brand{display:block!important}.topbar>.eyebrow{display:none!important}.mobile-nav{display:flex!important;max-width:600px;left:50%!important;transform:translateX(-50%);width:100%}.heading-aside,.training-side,.footer-note{display:none!important}.dashboard,.two-column{grid-template-columns:1fr!important}.dashboard{gap:26px}.topbar-actions{gap:12px}.topbar .preview-button{font-size:10px}.connection-banner{position:sticky;top:0;z-index:40;background:#f3dfc8;color:#4a3023;padding:10px 18px;font:12px/1.5 'DM Sans',sans-serif;border-bottom:1px solid #b5794e;display:flex;align-items:center;justify-content:space-between;gap:12px}.connection-banner button{background:none;border:0;text-decoration:underline;color:inherit;font-weight:650;white-space:nowrap}.connection-banner.saving{background:#e5eade;color:#324330;border-color:#c8d2bf}.connection-banner[hidden]{display:none}.auth-layout{min-height:100dvh;padding:32px 24px;display:flex;flex-direction:column;justify-content:center;gap:25px}.auth-brand{display:flex;gap:14px;align-items:center}.auth-brand img{width:55px;mix-blend-mode:multiply}.auth-brand span{font-size:10px;text-transform:uppercase;letter-spacing:.18em}.auth-layout h1{font-size:48px;margin:0}.auth-layout .field{margin-bottom:18px}.auth-layout .panel{padding:24px}.auth-note{font-size:12px;line-height:1.7;color:#706e61}.auth-error{padding:12px;background:#f4dcd3;color:#762f24;border-radius:10px;font-size:12px;margin:12px 0}.auth-error:empty{display:none}.auth-demo{border-top:1px solid var(--line,#d8d7cd);padding-top:18px}.auth-demo summary{font-size:12px;cursor:pointer}.auth-demo-buttons{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:15px}.auth-demo button{font-size:11px;padding:11px 8px}.server-config{font-size:12px}.server-config summary{cursor:pointer}.server-config .field{margin-top:15px}.loading-state{min-height:60vh;display:grid;place-content:center;text-align:center;gap:18px;color:#415440}.loading-spinner{width:32px;height:32px;border:2px solid #d6decd;border-top-color:#36503e;border-radius:50%;animation:connected-spin .9s linear infinite;margin:auto}@keyframes connected-spin{to{transform:rotate(360deg)}}.server-notice{font-size:10px;line-height:1.5;color:#6c725f;margin:14px 0}.private-media{width:100%;max-height:320px;object-fit:contain;border-radius:12px}.chat-form{position:relative}.send-status{font-size:11px;color:#718264}.working-button[disabled]{opacity:.6;cursor:wait}.auth-layout a{color:inherit}.meal-plain{white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px;line-height:1.9}.logout-button{color:#7b362b}.empty-state{padding:24px 0}.session-status{font-size:11px;color:#657157}.form-actions{flex-wrap:wrap}
@media(min-width:601px){body{box-shadow:0 0 70px #1d302c12}.topbar-brand .brand-wordmark{display:block}.mobile-nav .nav-item{flex:1}.page-heading h1{font-size:40px}.training-hero{min-height:355px}.training-hero h2{font-size:48px}.home-secondary{gap:24px}.week-row{min-height:53px!important}.week-panel{padding:0 18px!important}.week-toolbar{padding:10px 0!important}.week-view .notice{padding:11px 14px}.week-view>.page-heading{margin-bottom:15px}.tabs{gap:22px}.week-view .page-heading .muted{display:none}.week-view h1{font-size:38px}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.page-heading{gap:15px}}
.topbar{padding-top:calc(18px + var(--safe-area-inset-top,env(safe-area-inset-top,0px)))!important}.mobile-nav{padding-bottom:calc(12px + var(--safe-area-inset-bottom,env(safe-area-inset-bottom,0px)))!important}.auth-layout{padding-top:calc(32px + var(--safe-area-inset-top,env(safe-area-inset-top,0px)));padding-bottom:calc(32px + var(--safe-area-inset-bottom,env(safe-area-inset-bottom,0px)))}
/* Accepted r2 spacing, within the real mobile client and its native safe areas. */
.auth-brand .language-button{margin-left:auto;min-width:44px;min-height:44px;font-size:12px}
.main{padding:24px 20px 115px!important}
.topbar{height:calc(72px + var(--safe-area-inset-top,env(safe-area-inset-top,0px)));padding:0 20px!important;padding-top:var(--safe-area-inset-top,env(safe-area-inset-top,0px))!important}
.hero-compact .text-link{border:0;justify-content:flex-start;padding:10px 6px;width:100%;font-size:13px}
.ux-result textarea{min-height:95px}.ux-result .form-video{margin:16px 0}.ux-result .btn{margin-top:10px}
.chat-form textarea{font-family:inherit}.context-note .btn{font-size:11px;min-height:36px;margin-left:8px}
@media(max-width:360px){.main{padding-left:16px!important;padding-right:16px!important}.topbar{padding-left:16px!important;padding-right:16px!important}}
