/* White page surfaces, warm cream accents, and Ava's original photographs. */
:root{--cream:#f6f1e8;--ink:#24221f;--line:#e8e3db;--muted:#6c6760;--sand:#eee6da;--soft-white:#fff}
body{background:var(--cream)}.shell,main,header,footer{background:#fff}aside{background:#f8f4ee}.card,.softcard,.formcard,.programcard,.welcome{background:#fff}.daystrip{background:#f7f3ed;border:1px solid #eee8df;border-radius:45px;padding:12px}.daypick{background:#fff}.daypick.selected{background:var(--ink)}.daypick.today:not(.selected){border-color:#b8aa95}.dailyworkout{background:#fff;border:1px solid var(--line)}.dailyworkout .dailybody{background:#fff}.dailyworkout .dailyvisual{height:380px}.dailyvisual>img.ava-app-cover{object-position:center 35%}.dailyaside .softcard{background:#f8f4ed}.quote{background:#f0e8dc}.today-jumplinks button{background:#fff}.dailyworkout .btn.light,.btn.light{background:#fff}.sectionhead{gap:14px}.install-card{background:#f6f1e8}.layoutbanner{background:#f6f1e8}input,textarea,select{background:#fff}.formcard a{color:var(--ink)}.checkin-layout{display:grid;grid-template-columns:1.2fr .8fr;gap:24px;align-items:start}.checkin-layout .formcard{max-width:none}.checkin-layout textarea{min-height:180px}.checkin-layout .formcard h2{font-size:34px}.checkin-layout .formcard p.muted{font-size:13px}.checkin-photo{position:relative;overflow:hidden;border-radius:20px;background:var(--cream)}.checkin-photo>img{width:100%;height:640px;object-fit:cover;object-position:center 40%;display:block}.checkin-caption{background:#f6f1e8;padding:28px}.checkin-caption h2{margin:0;font-size:35px}.checkin-caption .eyebrow{display:block;margin-bottom:12px}.checkin-layout [hidden]{display:none}.together-lead,.live-lead{display:grid;grid-template-columns:1fr 1fr;overflow:hidden;border:1px solid var(--line);border-radius:20px;margin:24px 0 28px;background:#fff}.together-lead>img,.live-lead>img{height:420px;width:100%;object-fit:cover;display:block}.together-lead>img{object-position:center 60%}.live-lead>img{object-position:center 48%}.together-lead>div,.live-lead>div{padding:38px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.together-lead h2{font-size:51px;margin:8px 0 16px}.live-lead h2{font-size:37px;line-height:1.15}.together-lead p,.live-lead p{color:var(--muted);font-size:13px}.together-lead .btn{margin-top:15px}.home-encouragement{margin:24px 0}.home-encouragement .sectionhead h2{font-size:29px}.home-encouragement .encouragement-video{max-width:720px}.encouragement-toolbar{display:flex;gap:20px;align-items:center;justify-content:space-between;margin:24px 0}.encouragement-toolbar p{margin:0;font-size:13px}.encouragement-video{background:white}.encouragement-video-cover{background:#24221f}.encouragement-video video{width:100%;height:auto;min-height:210px;max-height:460px;display:block;border-radius:0;background:#24221f}.encouragement-video .eyebrow{font-size:8px;letter-spacing:1.4px}.encouragement-video p{white-space:pre-line}.encouragement-invitation{border:1px solid var(--line);border-radius:18px;background:#f7f3ed;padding:29px;display:flex;gap:22px;align-items:center}.encouragement-invitation h3{font-size:29px}.encouragement-invitation p{font-size:12px;margin:10px 0 0}.encouragement-invitation .btn{margin-left:auto;white-space:nowrap;flex-shrink:0}.encouragement-mark{font:100px/.8 Georgia,serif;color:#b9aa95;align-self:flex-start}.studio-encouragement{display:flex;gap:20px;align-items:center;justify-content:space-between;background:#f6f1e8;padding:23px;border-radius:15px;margin:20px 0 25px}.studio-encouragement strong{font:24px Georgia,serif}.studio-encouragement p{margin:8px 0 0;color:var(--muted);font-size:12px}.studio-encouragement button{flex-shrink:0}.training-editorial button{height:310px}.training-editorial img{object-position:center 45%}.training-editorial button:last-child img{object-position:center 55%}
@media(max-width:1100px){.checkin-layout{grid-template-columns:1.15fr .85fr}.checkin-photo>img{height:560px}.together-lead h2{font-size:42px}.together-lead>div,.live-lead>div{padding:28px}.encouragement-invitation{flex-wrap:wrap}.encouragement-invitation .btn{margin-left:55px}.training-editorial button{height:280px}}
@media(max-width:700px){
 aside{background:#fffefa}aside nav{background:#fffefa}aside nav a[href$='#checkin']{display:flex;flex-direction:column;align-items:center;font-size:9px;gap:5px;min-width:0}aside nav a[href$='#progress']{display:none}.shell,main{background:white}main{padding-top:28px}.today-intro h1{font-size:40px}.daystrip{padding:9px 6px;margin:20px -6px;border-radius:38px;gap:4px}.daypick{min-height:61px;padding:8px 1px;font-size:8px}.daypick b{font-size:19px}.weekmove{min-width:12px}.dailyworkout .dailyvisual{height:295px}.dailyvisual>img.ava-app-cover{object-position:center 35%}.checkin-layout{grid-template-columns:1fr}.checkin-photo{display:grid;grid-template-columns:45% 55%;border-radius:16px}.checkin-photo>img{height:230px;object-position:center 40%}.checkin-caption{padding:22px 18px;display:flex;flex-direction:column;justify-content:center}.checkin-caption h2{font-size:27px}.checkin-layout .formcard{padding:23px 20px}.checkin-layout .formcard h2{font-size:30px}.checkin-layout .formcard .note{font-size:11px}.together-lead,.live-lead{grid-template-columns:1fr 1fr;margin:23px 0}.together-lead>img,.live-lead>img{height:270px}.together-lead>div,.live-lead>div{padding:23px 16px}.together-lead h2{font-size:33px}.live-lead h2{font-size:27px}.together-lead .eyebrow,.live-lead .eyebrow{font-size:7px;letter-spacing:1.3px}.together-lead p,.live-lead p{font-size:11px}.together-lead .btn{font-size:10px;padding:10px 12px;min-height:40px}.home-encouragement .sectionhead h2{font-size:25px}.home-encouragement .sectionhead .textbtn{white-space:nowrap;font-size:10px}.encouragement-toolbar{align-items:flex-start;flex-direction:column;gap:13px}.encouragement-video video{min-height:190px}.encouragement-invitation{padding:22px 20px;gap:14px}.encouragement-invitation h3{font-size:26px}.encouragement-invitation .eyebrow{font-size:8px;letter-spacing:1.2px}.encouragement-invitation p{font-size:11px}.encouragement-mark{font-size:70px}.encouragement-invitation .btn{margin-left:0;width:100%;text-align:center}.studio-encouragement{flex-direction:column;align-items:flex-start;padding:21px}.studio-encouragement strong{font-size:23px}.training-editorial button{height:240px}.training-editorial button>span{font-size:25px}.training-editorial img{object-position:center 38%}.training-editorial button:last-child img{object-position:center 58%}
}
@media(max-width:360px){.together-lead,.live-lead{grid-template-columns:1fr}.together-lead>img,.live-lead>img{height:230px}.checkin-caption h2{font-size:24px}.today-intro h1{font-size:35px}.daypick{min-width:26px}.training-editorial button{height:210px}}
/* Original workout sheets remain uncropped on white cards. */
.recipe-plan-library{margin:26px 0 35px;padding-bottom:30px;border-bottom:1px solid var(--line)}.recipe-plan-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.recipe-plan-card{min-width:0;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:white}.recipe-plan-cover{display:block;width:100%;padding:15px;border:0;background:var(--cream);cursor:pointer}.recipe-plan-cover img{display:block;width:100%;height:auto;aspect-ratio:1055/1491;object-fit:contain}.recipe-plan-body{padding:23px}.recipe-plan-body h3{font-size:25px;line-height:1.2;margin:12px 0}.recipe-plan-body>p{font-size:13px;line-height:1.6}.recipe-plan-body ul{margin:18px 0 24px;padding-left:18px;font-size:13px;line-height:1.7;color:var(--muted)}.recipe-plan-body .inline,.recipe-plan-actions{flex-wrap:wrap;gap:9px}.recipe-plan-pages figure{margin:25px 0 0}.recipe-plan-pages img{display:block;width:100%;height:auto;border:1px solid var(--line);border-radius:8px}.recipe-plan-pages figcaption{font-size:11px;color:var(--muted);margin-top:8px;text-align:center}.recipe-plan-empty{grid-column:1/-1}
@media(max-width:1100px){.recipe-plan-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.recipe-plan-grid{grid-template-columns:1fr}.recipe-plan-library .sectionhead{align-items:flex-start}.recipe-plan-library .sectionhead h2{font-size:27px}.recipe-plan-library .pill{white-space:nowrap}}
.written-workout-editor{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:25px;align-items:start}.written-workout-editor .formcard{max-width:none;margin:0}.written-workout-editor textarea{min-height:285px;resize:vertical;font-size:15px;line-height:1.65}.written-workout-editor .inline{flex-wrap:wrap}.written-preview-label{margin:0 0 12px}.written-sheet{padding:32px;background:#f2eee5;color:#161616;border-radius:15px;font-family:var(--app-font);text-align:left;overflow-wrap:anywhere}.written-sheet-brand{font-size:10px;letter-spacing:1.6px;font-weight:750;padding-bottom:17px;border-bottom:2px solid #24221f}.written-sheet h3{font-family:var(--app-font);font-size:34px;line-height:1.15;margin:24px 0;font-weight:800;letter-spacing:-.8px;white-space:pre-wrap}.written-sheet-lines{display:grid;gap:9px}.written-sheet-lines p{margin:0;padding:14px 18px;border-radius:8px;background:#fff;font-size:15px;line-height:1.65;white-space:pre-wrap}.written-sheet-footer{font-size:9px;letter-spacing:1.6px;font-weight:700;margin-top:28px}.written-preview-empty{min-height:300px}.written-preview-empty>p{font-size:15px;line-height:1.7}.written-workout-row{display:flex;justify-content:space-between;align-items:center;gap:20px;border:1px solid var(--line);border-radius:12px;padding:20px 24px;margin:12px 0;background:white}.written-workout-row .inline{flex-wrap:wrap}.written-workout-row h3{font-size:22px}.written-workout-row p{margin:7px 0 0}#writtenWorkoutStudio{margin:24px 0 45px;padding-bottom:30px;border-bottom:1px solid var(--line);scroll-margin-top:30px}.written-sheet-compact{aspect-ratio:1055/1491;max-height:440px;overflow:hidden;padding:20px;border-radius:0}.written-sheet-compact h3{font-size:27px;margin:19px 0}.written-sheet-compact .written-sheet-brand{font-size:8px}.written-sheet-compact .written-sheet-lines p{font-size:12px;padding:10px}.written-sheet-compact .written-sheet-footer{font-size:7px}
@media(max-width:850px){.written-workout-editor{grid-template-columns:1fr}.written-workout-editor>.formcard{width:100%}.written-workout-row{align-items:flex-start;flex-direction:column}.written-sheet{padding:24px}.written-sheet h3{font-size:29px}.written-sheet-lines p{font-size:14px;padding:12px 14px}.written-workout-editor textarea{min-height:250px}}
.workout-plan-library{margin:32px 0 44px;padding-bottom:32px;border-bottom:1px solid var(--line)}
.workout-plan-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.workout-plan-card{min-width:0;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:#fff}
.workout-plan-preview{display:block;width:100%;border:0;padding:16px;background:var(--cream)}
.workout-plan-preview img{display:block;width:100%;height:auto;aspect-ratio:1055/1491;object-fit:contain}
.workout-plan-body{padding:21px}.workout-plan-body .eyebrow{margin-bottom:9px}.workout-plan-body h3{font-size:24px;min-height:60px}
.workout-plan-body .inline,.plan-sheet-actions{flex-wrap:wrap;gap:9px}
.plan-focus-label{display:flex;align-items:center;gap:10px;font-size:12px}.plan-focus-label select{min-width:150px;margin:0}
.workout-plan-sheet{display:block;width:100%;height:auto;margin-top:24px}
@media(max-width:1100px){.workout-plan-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.workout-plan-grid{grid-template-columns:1fr}.workout-plan-body h3{min-height:0}.workout-plan-library .sectionhead{align-items:start;gap:12px}.workout-plan-library .toolbar{align-items:stretch;flex-direction:column}.plan-focus-label select{flex:1}.workout-plan-library .pill{white-space:nowrap}}

/* New original photos across the coaching experience. */
.dailyvisual>img.ava-app-cover{object-position:50% 48%}
.training-editorial img{object-position:50% 61%}.training-editorial button:last-child img{object-position:50% 62%}
.together-lead>img{object-position:50% 47%}.live-lead>img{object-position:72% 50%}
.checkin-photo>img{object-position:50% 42%}.recipe-invitation .btn{margin-top:8px}
@media(max-width:700px){.live-lead{grid-template-columns:1fr}.live-lead>img{height:auto;aspect-ratio:1.3;object-position:60% 50%}.together-lead>img{object-position:50% 42%}.dailyvisual>img.ava-app-cover{object-position:50% 43%}}
/* Bold, clean mobile typography, following Ava's new font reference. */
:root{--app-font:'Avenir Next','Segoe UI',Arial,sans-serif}
body,button,input,select,textarea{font-family:var(--app-font)}
h1,h2,h3,.brand,.brand small,.asidebottom p,.quote blockquote,.training-editorial button>span,.install-card strong,.studio-encouragement strong,.daypick b,.programcard .number,.dailycover{font-family:var(--app-font);font-style:normal}
h1{font-weight:800;letter-spacing:-1.7px}h2{font-weight:750;letter-spacing:-.8px}h3{font-weight:700;letter-spacing:-.4px}.brand{font-weight:800;letter-spacing:-1.5px}.brand small{font-weight:600}.quote blockquote{font-weight:700;letter-spacing:-.6px}.asidebottom p{font-size:19px;line-height:1.5}.training-editorial button>span{font-weight:750}.install-card strong,.studio-encouragement strong{font-weight:700}
.program-store-lead{display:flex;align-items:center;justify-content:space-between;gap:30px;background:var(--cream);border-radius:18px;padding:30px;margin:24px 0}.program-store-lead p{margin-bottom:0;color:var(--muted)}.program-store-lead>span{font-size:52px;font-weight:800;white-space:nowrap}.program-store-lead small{display:block;font-size:9px;letter-spacing:2px;text-align:center}
.sale-program-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin:20px 0}.sale-program-grid>.empty{grid-column:1/-1}.sale-program-card{overflow:hidden;border:1px solid var(--line);border-radius:15px;background:white;min-width:0}.sale-program-cover{padding:26px;background:#f2ece1;text-align:center;color:var(--ink)}.sale-program-cover>span{display:block;font-size:9px;letter-spacing:2px}.sale-program-cover>b{display:block;font-size:85px;line-height:1.15;font-weight:800;letter-spacing:-5px;margin:12px 0}.sale-program-cover small{display:block;font-size:11px;letter-spacing:2px;margin:6px 0}.sale-program-card .body{padding:23px}.sale-program-card h3{margin-top:18px}.sale-description{white-space:pre-line;font-size:13px;line-height:1.65}.sale-price{font-size:27px;font-weight:750;margin:22px 0 10px}.sale-price small{display:block;font-size:10px;font-weight:400;color:var(--muted);letter-spacing:.3px}.sale-program-card .inline{flex-wrap:wrap}
.program-upload{max-width:900px}.program-drop{display:flex;flex-direction:column;align-items:center;gap:10px;padding:30px;border:2px dashed #b8ad9d;border-radius:12px;background:var(--cream);cursor:pointer;text-align:center}.program-drop.dragging{border-color:var(--ink);background:#e7dfd2}.program-drop input{width:100%;max-width:340px;background:white}.program-drop>span{font-size:12px}.program-publish{display:flex;align-items:center;gap:10px;margin:20px 0}.program-publish input{width:auto}.program-upload progress{width:100%;margin-top:20px}.program-upload [hidden]{display:none}
@media(max-width:1100px){.sale-program-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.sale-program-grid{grid-template-columns:1fr}.program-store-lead{padding:24px;gap:14px}.program-store-lead h2{font-size:25px}.program-store-lead>span{font-size:40px}.program-drop{padding:24px 15px}.program-upload .planrow{grid-template-columns:1fr}.today-intro h1{font-size:37px}.brand{font-size:24px}.together-lead h2{font-size:29px}}
/* Keep iPhone navigation attached to the viewport, not the filtered header. */
@media(max-width:700px){
 html{-webkit-text-size-adjust:100%;scroll-padding-top:16px}
 body{overflow-x:hidden;padding-bottom:calc(92px + env(safe-area-inset-bottom,0px))}
 aside{position:relative;inset:auto;width:100%;height:auto;min-height:76px;display:flex;flex-direction:row;align-items:center;justify-content:space-between;padding:calc(15px + env(safe-area-inset-top,0px)) 22px 15px;border-right:0;backdrop-filter:none;-webkit-backdrop-filter:none;transform:none;filter:none;contain:none;z-index:auto}
 aside .brand{flex-shrink:0}aside .navlabel,aside .asidebottom{display:none}
 aside nav{position:fixed;inset:auto 0 0;width:100%;margin:0;height:auto;display:flex;align-items:center;justify-content:space-around;padding:8px max(8px,env(safe-area-inset-right,0px)) calc(8px + env(safe-area-inset-bottom,0px)) max(8px,env(safe-area-inset-left,0px));z-index:30;background:#fdfbf8;border-top:1px solid var(--line)}
 aside nav a{margin:0;min-height:52px;flex:1;max-width:20%;font-size:10px}
 .shell{margin-left:0;width:100%;min-width:0}main{min-width:0}header{display:none}
 .daystrip{display:flex;gap:4px;width:100%;margin-left:0;margin-right:0;padding:8px}.daypick{min-width:0;flex:1;padding:9px 0}.weekmove{min-width:20px;min-height:44px}
 .toolbar,.inline{flex-wrap:wrap}input,select,textarea{max-width:100%;font-size:16px}.sectionhead h2{overflow-wrap:break-word}.together-lead,.live-lead{min-width:0}.formcard{min-width:0}
 dialog{max-height:calc(100dvh - 32px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));overflow-y:auto}
}
