/* 4.6: shared, brand-aware desktop and mobile experience. */
.wg-main{max-width:1240px} .page-title{max-width:24ch;text-wrap:balance}
.card-wg{box-shadow:none;border-color:color-mix(in srgb,var(--wg-text) 8%,transparent)}
.section-title{font-size:clamp(1.4rem,3vw,2rem);margin:12px 0 20px}
.btn{border-radius:16px;font-weight:600;min-height:48px}.btn:hover{transform:none}
.wg-primary{box-shadow:inset 0 1px 0 #ffffff20}.wg-secondary{background:transparent}
.row-fields{gap:20px;align-items:stretch}.row-fields>div{min-width:0}.row-fields>div>label{margin-bottom:8px}
.form-control,.form-select{min-height:50px;font-size:16px}.form-control[type=file]{height:auto}
details>summary{padding:8px 0;font-weight:600;line-height:1.5}details[open]>summary{margin-bottom:20px}
.experience-heading{margin-bottom:28px}.experience-heading p{max-width:64ch}
.experience-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:24px 0}
.experience-stat{padding:22px;border-radius:22px;background:var(--wg-card);border:1px solid var(--wg-line);min-width:0}
.experience-stat strong{display:block;font-size:clamp(1.4rem,3vw,2.1rem);font-family:'Russo One',sans-serif;overflow-wrap:anywhere}
.experience-stat span{display:block;margin-top:8px;font-size:14px;opacity:.8}
.experience-shortcuts{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0 28px}.experience-shortcuts a{padding:12px 18px;border-radius:14px;background:var(--wg-card);border:1px solid var(--wg-line);color:var(--wg-text);font-size:14px}
[id^=client-],[id^=gym-]{scroll-margin-top:105px}
.dashboard-focus{background:linear-gradient(120deg,color-mix(in srgb,var(--wg-accent) 16%,var(--wg-card)),var(--wg-card));border:1px solid color-mix(in srgb,var(--wg-accent) 40%,var(--wg-line))}
.dashboard-focus .btn{margin-top:12px}.dashboard-focus h2{margin-top:12px}.dashboard-focus>p{max-width:65ch}
.choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:20px 0}
.place-choice{display:flex;flex-direction:column;gap:10px;align-items:flex-start;text-align:left;border:1px solid var(--wg-line);border-radius:22px;padding:22px;background:var(--wg-card);color:var(--wg-text);cursor:pointer;font:inherit;min-width:0}
.choice-icon{display:grid;place-items:center;width:56px;height:56px;background:var(--wg-soft);border-radius:50%;color:var(--wg-secondary)}.choice-icon svg{width:28px;height:28px}
.place-choice strong{font-size:17px}.place-choice small{font-size:13px;opacity:.8}
.place-choice[aria-pressed=true]{border:2px solid var(--wg-accent);padding:21px;background:color-mix(in srgb,var(--wg-accent) 12%,var(--wg-card))}
.place-choice[aria-pressed=true] strong:after{content:' ✓';color:var(--wg-secondary)}
.equipment-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:20px 0 12px}.equipment-heading p{margin:0}
.profile-wizard [data-equipment]{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.profile-wizard [data-equipment] label{display:flex;align-items:center;gap:12px;padding:18px;min-height:90px;background:var(--wg-card);border:1px solid var(--wg-line);font-size:15px;line-height:1.4;cursor:pointer}
.profile-wizard [data-equipment] input{width:21px;height:21px;flex:0 0 21px;accent-color:var(--wg-accent)}
.profile-wizard [data-equipment] label:has(input:checked){border-color:var(--wg-accent);background:color-mix(in srgb,var(--wg-accent) 14%,var(--wg-card))}
.profile-wizard [data-equipment] label:has(input:disabled){opacity:.45;cursor:not-allowed}
.people-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.person-card{padding:24px;border-radius:22px;background:var(--wg-card)}
.person-card h3 a{color:var(--wg-text)}.person-card .button-row{margin-bottom:0}.person-card .button-row>.btn:first-child{width:100%}
.client-journey{display:none}.person-card details{margin-top:14px}.person-card details>summary{font-size:14px}
.workout-day>.section-title{margin:10px 0 16px}.workout-day>form>.btn{min-width:220px;margin:12px 0}
.exercise-card>summary{font-size:16px;padding:10px 0;overflow-wrap:anywhere}.exercise-card>summary strong{color:var(--wg-text)}
.training-exercise h2{font-size:clamp(1.3rem,3vw,1.8rem)}.training-exercise>p>a{display:inline-flex;padding:12px 0;min-height:44px}
.training-exercise [data-complete-exercise]{font-size:14px;margin:0 0 12px}.set-card{border-radius:18px;padding:18px}.set-fields{gap:14px}.set-fields input{text-align:center;font-size:20px;font-weight:600}
.training-progress{border:1px solid var(--wg-line);border-radius:16px;padding:16px;background:var(--wg-card)}
.mobile-dock a[aria-current=page]{background:var(--wg-soft);border-radius:14px;color:var(--wg-secondary);opacity:1}
.empty-experience{padding:28px;text-align:center;border:1px dashed var(--wg-line);border-radius:20px;color:var(--wg-text)}
@media(max-width:760px){
 .wg-main{padding:24px 16px 48px}.page-title{font-size:clamp(27px,7vw,36px);line-height:1.2;max-width:100%}.card-wg{padding:20px;border-radius:22px;margin-bottom:16px}
 .brand span{max-width:230px;overflow-wrap:anywhere}.brand img{width:36px;height:36px}.wg-header{padding:12px 16px}
 .experience-stats{gap:8px;margin:20px 0}.experience-stat{padding:16px 12px;border-radius:18px}.experience-stat span{font-size:12px}.experience-stat strong{font-size:22px}
 .experience-shortcuts{display:grid;grid-template-columns:1fr 1fr;gap:8px}.experience-shortcuts a{text-align:center;padding:12px 8px}
 .choice-grid{grid-template-columns:1fr 1fr;gap:10px}.place-choice{padding:18px;align-items:center;text-align:center}.place-choice[aria-pressed=true]{padding:17px}.place-choice:last-child{grid-column:1/-1;flex-direction:row;text-align:left;align-items:center}.place-choice small{display:none}
 .profile-wizard [data-equipment]{grid-template-columns:1fr 1fr!important}.profile-wizard [data-equipment] label{padding:14px 10px;gap:8px;min-height:100px;font-size:14px;border-radius:18px}
 .profile-wizard .row-fields{grid-template-columns:1fr}.wizard-steps{gap:5px}.wizard-steps button{font-size:12px;padding:10px 8px;border-color:var(--wg-line)}
 .wizard-controls{position:sticky;bottom:0;background:var(--wg-card);padding:14px 8px;z-index:8;border-top:1px solid var(--wg-line);border-radius:14px;flex-wrap:nowrap}.client-portal .wizard-controls{bottom:calc(76px + env(safe-area-inset-bottom))}.wizard-controls .btn{padding:12px 16px}.wizard-controls [data-step-counter]{font-size:12px}
 .people-grid{grid-template-columns:1fr}.person-card{padding:20px}.list-heading{align-items:flex-start}.list-heading h2{font-size:24px}
 .button-row{gap:10px}.button-row>.btn,.button-row>form{flex:1 1 160px}.button-row>form>.btn{width:100%}
 .dashboard-focus .btn,.workout-day>form>.btn{width:100%}.exercise-summary{align-items:flex-start}.training-exercise .exercise-demo{width:84px;min-width:84px}.training-exercise .exercise-summary{gap:12px}
 .set-fields{grid-template-columns:1fr 1fr}.set-fields>div>label{font-size:13px;min-height:2.8em}.set-fields input{min-height:54px}.set-top strong{font-size:18px}
 .mobile-dock{padding:8px 12px calc(8px + env(safe-area-inset-bottom));gap:5px}.mobile-dock a{padding:6px 0;font-size:11px}.mobile-dock span{font-size:23px}.wg-footer{padding:24px 18px}
 .team-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.team-table,.team-table tbody,.team-table tr,.team-table td{display:block;width:100%}.team-table tr{padding:12px 0;border-bottom:1px solid var(--wg-line)}.team-table td{border:0;padding:8px 0;overflow-wrap:anywhere}.team-table td:before{content:attr(data-label);display:block;font-size:12px;opacity:.65;margin-bottom:4px}.team-table td:last-child{display:flex;gap:10px;flex-wrap:wrap}.team-table td:last-child:before{width:100%}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
