/* Strong & Well V5 client app — boutique cream / forest visual system.
   Screens are rendered by sw5-client.js. Older V4 rules remain in index.html;
   resets below are wrapped in :where() so the sw5-* classes always win. */
:root{
 --sw5-bg:#f3eee5;--sw5-card:#fbf8f2;--sw5-line:#e4dccd;--sw5-line-strong:#d3c8b4;
 --sw5-forest:#1f3a2d;--sw5-forest-2:#2d4d3b;--sw5-ink:#262722;--sw5-muted:#77766b;
 --sw5-olive:#7f8b68;--sw5-sage:#a7b296;--sw5-tan:#c3ae88;--sw5-sand:#e9e0cf;--sw5-gold:#c9a96a;
 --sw5-radius:18px;--sw5-serif:"Cormorant Garamond","Playfair Display",Georgia,"Times New Roman",serif;
 --sw5-sans:-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",Roboto,sans-serif;
}
body.sw-signed-in{background:var(--sw5-bg)}
body.sw-signed-in>header{display:none}
body.sw-signed-in #sw-session{font-size:.75rem;padding:6px 16px;background:transparent;border:0;color:var(--sw5-muted);max-width:560px;margin:0 auto;gap:8px}
body.sw-signed-in #sw-session button{padding:4px 10px;font-size:.75rem;border-radius:999px;background:transparent}
body.sw-signed-in #sw-owner-nav{max-width:560px;margin:4px auto 0;padding:4px 16px;background:transparent;border:0}
.sw5-icon{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex:none}
.sw5-icon.sw5-big{width:30px;height:30px}

/* ---------- resets inside the new screens ---------- */
:where(.sw5-app,.sw5-logger,#sw-coach-workout) section{margin:0;padding:0;border:0;background:none;box-shadow:none;border-radius:0}
:where(.sw5-app,.sw5-logger,#sw-coach-workout) label{display:block;font-size:inherit;color:inherit;font-weight:inherit;margin:0}
:where(.sw5-app,.sw5-logger,#sw-coach-workout) textarea{min-height:0}
:where(.sw5-app,.sw5-logger,#sw-coach-workout) input[type=radio]{width:auto}
:where(.sw5-app,.sw5-logger,#sw-coach-workout) nav{overflow:visible;padding:0}
:where(.sw5-app,.sw5-logger,#sw-coach-workout) h2,:where(.sw5-app,.sw5-logger,#sw-coach-workout) h3,:where(.sw5-app,.sw5-logger,#sw-coach-workout) h4{margin:0}
.sw5-app{max-width:560px!important;margin:0 auto;padding:8px 16px 150px!important;color:var(--sw5-ink);font-family:var(--sw5-sans)}
.sw5-app input,.sw5-app select,.sw5-app textarea,.sw5-logger input,.sw5-logger textarea,#sw-coach-workout input,#sw-coach-workout textarea{border:1px solid var(--sw5-line);background:#fffdf9;border-radius:12px;padding:11px 12px;color:var(--sw5-ink);font-size:16px}
.sw5-app textarea,.sw5-logger textarea,#sw-coach-workout textarea{resize:vertical;line-height:1.4}

/* ---------- shared pieces ---------- */
.sw5-card{background:var(--sw5-card)!important;border:1px solid var(--sw5-line)!important;border-radius:var(--sw5-radius)!important;padding:16px!important;margin:0 0 14px!important;box-shadow:0 2px 10px #3a2f1a0a!important}
.sw5-muted{color:var(--sw5-muted);font-size:.85rem;margin:2px 0}
.sw5-fine{color:var(--sw5-muted);font-size:.74rem;line-height:1.45;margin:10px 2px;display:flex;gap:6px;align-items:flex-start}
.sw5-fine .sw5-icon{width:15px;height:15px;margin-top:1px}
.sw5-center{text-align:center}
.sw5-label{font-size:.72rem!important;letter-spacing:.12em;text-transform:uppercase;color:var(--sw5-muted);font-weight:700;margin:18px 2px 8px!important}
.sw5-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;background:var(--sw5-forest);color:#fbf8f2;border:1px solid var(--sw5-forest);border-radius:12px;padding:13px 18px;font-weight:600;font-size:.95rem;white-space:nowrap;cursor:pointer}
.sw5-btn:hover{background:var(--sw5-forest-2)}
.sw5-btn:disabled{opacity:.45;cursor:default}
.sw5-btn-wide{width:100%;margin:14px 0 4px}
.sw5-btn-ghost{background:transparent;color:var(--sw5-forest);border-color:var(--sw5-line-strong)}
.sw5-btn-ghost:hover,.sw5-btn-outline:hover{background:var(--sw5-sand)}
.sw5-btn-outline{background:var(--sw5-card);color:var(--sw5-forest);border-color:var(--sw5-line-strong)}
.sw5-btn-outline[aria-pressed=true]{background:var(--sw5-sand)}
.sw5-btn-soft{background:#e6e8dc;color:var(--sw5-forest);border-color:#d8dccb}
.sw5-btn-soft:hover{background:#dde1d0}
.sw5-btn .sw5-icon{width:18px;height:18px}
.sw5-iconbtn{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;padding:0;border-radius:50%;background:transparent;border:0;color:var(--sw5-forest);font-size:1.3rem;cursor:pointer;flex:none}
.sw5-iconbtn:hover{background:var(--sw5-sand)}
.sw5-iconbtn:disabled{opacity:.25}
.sw5-iconbtn.sw5-solid{background:var(--sw5-forest);color:#fff}
.sw5-iconbtn.sw5-ghost{border:1px solid var(--sw5-line-strong);width:34px;height:34px;font-size:1.1rem}
.sw5-link{background:none!important;border:0!important;padding:0!important;color:var(--sw5-forest)!important;text-decoration:underline;font-weight:600;cursor:pointer}
.sw5-pill{border-radius:999px;padding:8px 16px;background:var(--sw5-card);border:1px solid var(--sw5-line-strong);color:var(--sw5-ink);font-weight:600;cursor:pointer}
.sw5-warning{background:#f8efdc;border:1px solid #e4cf9f;border-radius:14px;padding:12px 14px;margin:0 0 14px;font-size:.88rem}
.sw5-warning p{margin:0 0 10px}
.sw5-field{display:flex!important;flex-direction:column;gap:6px;margin:12px 0!important}
.sw5-field>span{font-size:.88rem;font-weight:600;color:var(--sw5-ink)}
.sw5-mini-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:0 12px}
.sw5-datenav{display:flex;align-items:center;justify-content:center;gap:14px;margin:4px 0 12px;font-weight:600;font-size:.95rem}
.sw5-datenav span{min-width:120px;text-align:center}

/* ---------- page head / navigation ---------- */
.sw5-page-head{display:grid!important;grid-template-columns:40px 1fr 40px;align-items:center;padding:6px 0 10px!important;gap:0!important}
.sw5-page-head h2{text-align:center;font-family:var(--sw5-sans);font-size:1.05rem;font-weight:600;color:var(--sw5-ink)}
.sw5-panel{padding:0}
#sw-v41-bottom{background:#fbf8f2f2!important;border-top:1px solid var(--sw5-line)!important;backdrop-filter:blur(14px)}
#sw-v41-bottom button{color:#8b8a7e!important;gap:4px!important}
#sw-v41-bottom button small{font-size:.68rem!important}
#sw-v41-bottom button.sw-v41-active{color:var(--sw5-forest)!important;background:transparent!important}
#sw-v41-bottom button.sw-v41-active small{font-weight:700}
@media(min-width:600px){#sw-v41-bottom{max-width:560px!important;margin:auto;border-radius:18px 18px 0 0}}
.sw5-savebar{position:fixed;z-index:998;left:50%;transform:translateX(-50%);bottom:calc(74px + env(safe-area-inset-bottom));width:min(528px,calc(100% - 32px));display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 8px 8px 16px;border-radius:14px;background:var(--sw5-forest);color:#f3eee5;box-shadow:0 8px 24px #1f3a2d40}
.sw5-savebar[hidden]{display:none}
.sw5-savebar p{margin:0;font-size:.85rem}
.sw5-savebar .sw5-btn{background:#f3eee5;color:var(--sw5-forest);padding:9px 18px}

/* ---------- Home ---------- */
.sw5-hero{position:relative;overflow:hidden;border-radius:22px 22px 0 0!important;padding:26px 22px 54px!important;min-height:210px;color:#f6f1e7;
 background:radial-gradient(120% 90% at 85% 0%,#5b6b4f55 0,transparent 60%),radial-gradient(90% 80% at 0% 100%,#00000055 0,transparent 70%),linear-gradient(160deg,#2a3a2d 0%,#1b2a20 55%,#3b3326 100%)!important}
.sw5-hero:after{content:"";position:absolute;right:-30px;top:20px;width:190px;height:210px;opacity:.18;background:
 radial-gradient(ellipse 30px 60px at 50% 30%,#c9d6b0 98%,transparent) 30px 10px/80px 120px no-repeat,
 radial-gradient(ellipse 26px 56px at 50% 30%,#c9d6b0 98%,transparent) 90px 50px/80px 120px no-repeat,
 radial-gradient(ellipse 22px 48px at 50% 30%,#c9d6b0 98%,transparent) 10px 90px/80px 120px no-repeat;transform:rotate(-18deg)}
.sw5-brand{font-family:var(--sw5-serif);letter-spacing:.14em;font-size:.95rem;margin:0 0 18px;opacity:.95}
.sw5-hero h2{font-family:var(--sw5-serif);font-weight:400;font-size:1.9rem;line-height:1.15;color:#fff}
.sw5-hero h2 strong{font-weight:600}
.sw5-hero p{margin:6px 0 0;font-size:.82rem;opacity:.85}
.sw5-hero-tag{display:inline-block;margin-top:12px;font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;border:1px solid #ffffff40;border-radius:999px;padding:4px 10px}
.sw5-today{margin-top:-34px!important;position:relative;border-radius:22px!important}
.sw5-steps{display:grid;grid-template-columns:repeat(5,1fr);gap:4px;margin:4px 0 14px}
.sw5-step{display:flex;flex-direction:column;align-items:center;gap:6px;background:none;border:0;padding:4px 0;color:var(--sw5-muted);cursor:pointer;white-space:normal}
.sw5-step small{font-size:.68rem}
.sw5-step-dot{width:30px;height:30px;border-radius:50%;border:1.5px solid var(--sw5-line-strong);display:flex;align-items:center;justify-content:center;color:var(--sw5-line-strong);background:#fffdf9}
.sw5-step-dot .sw5-icon{width:16px;height:16px;stroke-width:2.2}
.sw5-step.sw5-done .sw5-step-dot{background:var(--sw5-forest);border-color:var(--sw5-forest);color:#fff}
.sw5-step.sw5-done small{color:var(--sw5-forest);font-weight:600}
.sw5-focus{background:var(--sw5-bg);border-radius:14px;padding:14px 16px}
.sw5-focus h3{font-family:var(--sw5-serif);font-size:1.25rem;font-weight:600;margin-bottom:6px!important;color:var(--sw5-ink)}
.sw5-checklist{list-style:none;padding:0;margin:0}
.sw5-checklist label{display:flex!important;align-items:center;gap:10px;padding:6px 0;font-size:.92rem}
.sw5-checklist input,.sw5-priority-row input,.sw5-grocery input,.sw5-toggle input{width:20px!important;height:20px;flex:none;accent-color:var(--sw5-forest);margin:0}
.sw5-checklist input:checked+span{color:var(--sw5-muted)}
.sw5-quote{margin:0;padding:30px 20px;text-align:center;font-family:var(--sw5-serif);font-style:italic;font-size:1.35rem;line-height:1.35;color:#4b5442}

/* ---------- Morning ---------- */
.sw5-q{font-size:1rem;font-weight:600;margin:6px 0 12px!important}
.sw5-tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:14px}
.sw5-tile{display:flex;flex-direction:column;align-items:center;gap:8px;padding:14px 4px 10px;border-radius:14px;background:var(--sw5-card);border:1px solid var(--sw5-line);color:var(--sw5-forest);cursor:pointer}
.sw5-tile small{font-size:.72rem;color:var(--sw5-muted)}
.sw5-tile.sw5-done{border-color:var(--sw5-sage);background:#eef0e6}
.sw5-slider{display:grid;grid-template-columns:82px 1fr 58px;align-items:center;gap:10px;padding:7px 0}
.sw5-slider>.sw5-icon{display:none}
.sw5-slider label{font-size:.88rem}
.sw5-slider output{text-align:right;font-size:.85rem;color:var(--sw5-ink);font-variant-numeric:tabular-nums}
.sw5-slider input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:8px;border-radius:999px;border:0!important;padding:0!important;background:linear-gradient(90deg,var(--sw5-olive) var(--sw5-fill,0%),#e6e0d3 var(--sw5-fill,0%))!important}
.sw5-slider:nth-of-type(2) input[type=range]{background:linear-gradient(90deg,var(--sw5-tan) var(--sw5-fill,0%),#e6e0d3 var(--sw5-fill,0%))!important}
.sw5-slider input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:20px;height:20px;border-radius:50%;background:#fff;border:2px solid var(--sw5-olive);box-shadow:0 1px 3px #0003}
.sw5-slider input[type=range]::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:#fff;border:2px solid var(--sw5-olive)}
.sw5-slider input.sw5-unset::-webkit-slider-thumb{border-color:#cfc7b6}
.sw5-rows{display:flex;flex-direction:column;background:var(--sw5-card);border:1px solid var(--sw5-line);border-radius:var(--sw5-radius);overflow:hidden;margin:0 0 14px}
.sw5-row{display:flex;align-items:center;gap:14px;width:100%;padding:14px 16px;background:transparent;border:0;border-bottom:1px solid var(--sw5-line);border-radius:0;color:var(--sw5-forest);text-align:left;cursor:pointer;white-space:normal;list-style:none}
.sw5-row::-webkit-details-marker{display:none}
.sw5-rows>:last-child .sw5-row,.sw5-rows>.sw5-row:last-child{border-bottom:0}
.sw5-row>span{flex:1;display:flex;flex-direction:column;gap:2px;color:var(--sw5-ink)}
.sw5-row strong{font-weight:600;font-size:.92rem}
.sw5-row small{font-size:.76rem;color:var(--sw5-muted)}
.sw5-chev{width:18px;height:18px;color:var(--sw5-muted);transition:transform .15s}
.sw5-row-details[open] .sw5-chev{transform:rotate(90deg)}
.sw5-row-details[open]>.sw5-row{border-bottom:0}
.sw5-row-body{padding:0 16px 14px;border-bottom:1px solid var(--sw5-line)}
.sw5-rows>.sw5-row-details:last-child .sw5-row-body{border-bottom:0}

/* ---------- Training ---------- */
.sw5-tabs{display:grid!important;grid-auto-flow:column;grid-auto-columns:1fr;gap:4px!important;background:#ebe5d8;border-radius:12px;padding:4px!important;margin:0 0 14px}
.sw5-tabs button{background:transparent;border:0;border-radius:9px;padding:9px 4px;font-size:.88rem;color:var(--sw5-muted);font-weight:600}
.sw5-tabs button[aria-pressed=true]{background:var(--sw5-forest);color:#fff}
.sw5-tabs-line{background:transparent;border-bottom:1px solid var(--sw5-line);border-radius:0;padding:0!important}
.sw5-tabs-line button{border-radius:0;padding:10px 4px}
.sw5-tabs-line button[aria-pressed=true]{background:transparent;color:var(--sw5-forest);box-shadow:inset 0 -2px 0 var(--sw5-forest)}
.sw5-session-head{display:flex;align-items:center;gap:14px;margin-bottom:12px;color:var(--sw5-forest)}
.sw5-session-head h3{font-size:1.05rem;color:var(--sw5-ink)}
.sw5-options{display:flex;flex-direction:column;gap:8px}
.sw5-option{display:flex!important;align-items:flex-start;gap:12px;padding:12px 14px;border:1px solid var(--sw5-line);border-radius:12px;background:#fffdf9;cursor:pointer}
.sw5-option input{accent-color:var(--sw5-forest);width:18px!important;height:18px;margin:2px 0 0}
.sw5-option span{display:flex;flex-direction:column;gap:2px}
.sw5-option strong{font-size:.92rem;font-weight:600}
.sw5-option small{font-size:.78rem;color:var(--sw5-muted)}
.sw5-option.sw5-selected{background:#e9ecdf;border-color:#cbd2bb}
.sw5-chips{display:flex;flex-wrap:wrap;gap:8px}
.sw5-chip{display:inline-flex;align-items:center;gap:4px;border-radius:999px;padding:8px 14px;background:#fffdf9;border:1px solid var(--sw5-line-strong);color:var(--sw5-ink);font-size:.84rem;font-weight:500;white-space:nowrap}
.sw5-chip[aria-checked=true],.sw5-chip[aria-pressed=true]{background:var(--sw5-forest);border-color:var(--sw5-forest);color:#fff}
.sw5-chip .sw5-icon{width:15px;height:15px}
.sw5-chip-add{background:transparent;border-style:dashed}
.sw5-recovery{margin-top:6px}
.sw5-lib{padding:10px 0;border-top:1px solid var(--sw5-line)}
.sw5-lib:first-child{border-top:0}
.sw5-cues{margin:8px 0 6px;font-size:.86rem}
.sw5-cues summary{display:inline-block;cursor:pointer;font-size:.78rem;font-weight:600;color:var(--sw5-forest);border:1px solid var(--sw5-line-strong);border-radius:999px;padding:5px 12px;background:#fffdf9}
.sw5-cues ol{padding-left:22px;line-height:1.55;margin:10px 0}
.sw5-cues a{color:var(--sw5-forest);font-weight:600}
.sw5-week{display:flex;flex-direction:column;gap:8px}
.sw5-week-day{display:grid!important;grid-template-columns:44px 1fr auto;align-items:center;gap:12px;padding:10px 12px;border-radius:14px;background:var(--sw5-card);border:1px solid var(--sw5-line);text-align:left;white-space:normal;color:var(--sw5-ink)}
.sw5-week-day.sw5-selected{border-color:var(--sw5-forest);box-shadow:inset 0 0 0 1px var(--sw5-forest)}
.sw5-week-day>span{display:flex;flex-direction:column}
.sw5-week-day small{font-size:.74rem;color:var(--sw5-muted)}
.sw5-week-date{align-items:center;background:var(--sw5-bg);border-radius:10px;padding:4px 0}
.sw5-pill-status{font-size:.7rem;font-weight:700;border-radius:999px;padding:4px 9px;background:#ece7dc;color:var(--sw5-muted)}
.sw5-status-done,.sw5-status-logged{background:var(--sw5-forest);color:#fff}
.sw5-status-in-progress{background:#e6d9bb;color:#5a4a24}
.sw5-status-planned{background:#e6e8dc;color:var(--sw5-forest)}
.sw5-facts{display:grid;grid-template-columns:auto 1fr;gap:8px 14px;margin:14px 0 0;font-size:.88rem}
.sw5-facts dt{color:var(--sw5-muted)}
.sw5-facts dd{margin:0}
#sw494-schedule,#sw491-history-content{margin-top:0}
#sw491-history-content button{background:var(--sw5-card);border:1px solid var(--sw5-line-strong);border-radius:10px;color:var(--sw5-forest)}

/* ---------- Workout logger (client + coach) ---------- */
.sw5-logger-head{display:grid;grid-template-columns:40px 1fr 40px;align-items:center;text-align:center;margin-bottom:10px}
.sw5-logger-head h3{font-size:1.02rem;color:var(--sw5-ink)}
.sw5-progress{height:4px;border-radius:999px;background:#e4ddce;overflow:hidden;margin-bottom:12px}
.sw5-progress span{display:block;height:100%;background:var(--sw5-forest);transition:width .2s}
.sw5-ex-title{font-family:var(--sw5-sans);font-size:1.15rem!important;font-weight:700;margin:16px 0 4px!important;color:var(--sw5-ink)}
.sw5-sets{margin:10px 0 18px}
.sw5-plan{font-size:.82rem;color:var(--sw5-muted);margin:0}
.sw5-set-grid{display:flex;flex-direction:column;gap:6px;margin-top:10px}
.sw5-set-row{display:grid;grid-template-columns:28px repeat(3,minmax(0,1fr)) 36px;gap:8px;align-items:center}
.sw5-set-head span{font-size:.74rem;color:var(--sw5-muted);text-align:center}
.sw5-set-n{text-align:center;font-weight:600;color:var(--sw5-muted)}
.sw5-set-row input[type=text]{text-align:center;padding:10px 4px!important;font-variant-numeric:tabular-nums;width:100%}
.sw5-set-row input.sw5-suggested{color:#a39f92}
.sw5-check{position:relative;display:flex!important;justify-content:center}
.sw5-check input{position:absolute;opacity:0;width:32px!important;height:32px;margin:0;cursor:pointer}
.sw5-check span{width:30px;height:30px;border-radius:8px;border:1.5px solid var(--sw5-line-strong);display:flex;align-items:center;justify-content:center;color:transparent;background:#fffdf9;pointer-events:none}
.sw5-check span .sw5-icon{width:18px;height:18px;stroke-width:2.4}
.sw5-check input:checked+span{background:var(--sw5-forest);border-color:var(--sw5-forest);color:#fff}
.sw5-check input:focus-visible+span{outline:3px solid var(--sw5-gold);outline-offset:2px}
.sw5-set-done input[type=text]{background:#f0f1e8!important}
.sw5-timer{border-top:1px solid var(--sw5-line);padding-top:6px}
.sw5-timer-body{display:flex;align-items:center;gap:18px}
.sw5-timer-dial{position:relative;width:112px;height:112px;flex:none}
.sw5-timer-ring{width:100%;height:100%;transform:rotate(-90deg)}
.sw5-timer-track{fill:none;stroke:#e4ddce;stroke-width:7}
.sw5-timer-arc{fill:none;stroke:var(--sw5-forest);stroke-width:7;stroke-linecap:round;transition:stroke-dashoffset .25s linear}
.sw5-timer-time{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:1.6rem;font-weight:500;font-variant-numeric:tabular-nums;color:var(--sw5-ink)}
.sw5-timer-controls{display:flex;flex-direction:column;gap:10px;flex:1}
.sw5-timer-adjust{display:flex;gap:8px;align-items:center}
.sw5-timer-adjust .sw5-btn{flex:1;border-radius:999px;padding:10px 16px}
.sw5-history{padding:12px 0;border-bottom:1px solid var(--sw5-line);font-size:.86rem}
.sw5-history h4{font-size:.95rem;margin-bottom:4px!important}
.sw5-history p{margin:4px 0}
.sw5-logger-actions{display:grid;grid-template-columns:auto auto 1fr;gap:8px;margin-top:16px}
.sw5-logger-actions .sw5-btn{padding:12px 14px}
#sw-coach-workout .sw5-chips{margin:8px 0}

/* ---------- Nutrition ---------- */
.sw5-rings{display:flex;justify-content:space-around;gap:10px;margin:4px 0 12px}
.sw5-rings-sm{justify-content:space-between}
.sw5-ring{position:relative}
.sw5-ring-lg{width:142px;height:142px}
.sw5-ring-sm{width:100px;height:100px}
.sw5-ring svg{width:100%;height:100%;transform:rotate(-90deg)}
.sw5-ring-track{fill:none;stroke:#e6e0d3;stroke-width:6}
.sw5-ring-arc{fill:none;stroke:var(--sw5-forest-2);stroke-width:6;stroke-linecap:round;transition:stroke-dashoffset .3s}
.sw5-ring-carbs .sw5-ring-arc{stroke:var(--sw5-olive)}
.sw5-ring-fat .sw5-ring-arc{stroke:var(--sw5-gold)}
.sw5-ring-fiber .sw5-ring-arc{stroke:var(--sw5-sage)}
.sw5-ring-inner{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0}
.sw5-ring-inner small{font-size:.7rem;color:var(--sw5-muted)}
.sw5-ring-value{display:flex;align-items:baseline;justify-content:center;font-weight:700;font-size:1.45rem;color:var(--sw5-ink)}
.sw5-ring-sm .sw5-ring-value{font-size:1.08rem}
.sw5-ring-value input{min-width:1.5ch;border:0!important;background:transparent!important;padding:0!important;text-align:center;font:inherit!important;font-size:inherit!important;color:inherit;border-radius:6px!important}
.sw5-ring-value input:focus{background:#fffdf9!important;outline:2px solid var(--sw5-sage)}
.sw5-water{display:grid!important;grid-template-columns:auto 1fr auto auto;align-items:center;gap:12px;color:var(--sw5-forest-2)}
.sw5-water strong{display:block;color:var(--sw5-ink)}
.sw5-bar{height:6px;border-radius:999px;background:#e6e0d3;margin-top:6px;overflow:hidden}
.sw5-bar span{display:block;height:100%;background:var(--sw5-forest-2);transition:width .2s}
.sw5-meals{background:var(--sw5-card);border:1px solid var(--sw5-line);border-radius:var(--sw5-radius);margin:0 0 14px}
.sw5-meal{border-bottom:1px solid var(--sw5-line);padding:10px 14px}
.sw5-meal:last-child{border-bottom:0}
.sw5-meal-row{display:flex;align-items:center;gap:12px}
.sw5-meal-row>span:nth-child(2){flex:1;display:flex;flex-direction:column;min-width:0}
.sw5-meal-row small{color:var(--sw5-muted);font-size:.78rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sw5-meal-icon{width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;flex:none}
.sw5-meal-breakfast{background:radial-gradient(circle at 35% 35%,#e6b66f,#b0773a)}
.sw5-meal-lunch{background:radial-gradient(circle at 35% 35%,#a9b97a,#5f7340)}
.sw5-meal-snack{background:radial-gradient(circle at 35% 35%,#e8d6b4,#b39466)}
.sw5-meal-dinner{background:radial-gradient(circle at 35% 35%,#d99c7c,#8f5136)}
.sw5-meal-edit{margin-top:8px}
.sw5-meal-edit textarea{width:100%}
.sw5-two{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px}
.sw5-grocery{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 0;border-bottom:1px solid var(--sw5-line)}
.sw5-grocery label{display:flex!important;align-items:center;gap:10px}
.sw5-add{display:flex;gap:8px;margin-top:12px}
.sw5-add input{flex:1}
.sw5-add-slot{display:grid;grid-template-columns:110px 1fr;gap:8px}
.sw5-add-slot select{grid-column:1}
.sw5-add-slot .sw5-btn{grid-column:2}

/* ---------- My Day ---------- */
.sw5-priority{margin:0 0 14px!important}
.sw5-priority h4{font-size:.9rem;font-weight:700;margin:0 2px 6px!important}
.sw5-priority-row{display:flex!important;align-items:flex-start;gap:12px;background:var(--sw5-card);border:1px solid var(--sw5-line);border-radius:14px;padding:12px 14px}
.sw5-priority-row input{margin-top:4px!important}
.sw5-priority-row textarea{flex:1;border:0!important;background:transparent!important;padding:2px 0!important;font-size:.92rem}
.sw5-priority-row textarea:focus{outline:none}
.sw5-priority-row:focus-within{border-color:var(--sw5-sage)}
.sw5-schedule{margin-top:18px!important}
.sw5-schedule h4{font-size:.9rem;font-weight:700;margin:0 2px 8px!important}
.sw5-slot{display:grid;grid-template-columns:72px 1fr 34px;align-items:center;gap:10px;margin-bottom:6px}
.sw5-slot-time{font-size:.82rem;color:var(--sw5-muted);font-variant-numeric:tabular-nums}
.sw5-slot-block{padding:7px 12px;border-radius:8px;border-left:4px solid var(--sw5-forest);background:#e3e8dc;font-size:.88rem}
.sw5-kind-workout{background:#f2e6c9;border-color:#b89552}
.sw5-kind-clients{background:#e0e6d8;border-color:#4d6a52}
.sw5-kind-admin{background:#dfe8e3;border-color:#6f8c80}
.sw5-kind-family{background:#efe0dc;border-color:#a8705f}

/* ---------- Evening ---------- */
.sw5-evening .sw5-field>span{font-size:.86rem}
.sw5-evening textarea{background:#fffdf9}

/* ---------- Cycle ---------- */
.sw5-month{display:flex;align-items:center;justify-content:center;gap:10px;position:relative;margin:2px 0 12px;font-weight:600}
.sw5-month .sw5-icon{position:absolute;right:4px;color:var(--sw5-muted)}
.sw5-strip{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:14px}
.sw5-strip-day{display:flex;flex-direction:column;align-items:center;gap:6px;background:transparent;border:0;padding:6px 0;color:var(--sw5-ink)}
.sw5-strip-day small{font-size:.7rem;color:var(--sw5-muted)}
.sw5-strip-day strong{width:34px;height:34px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-weight:500}
.sw5-strip-day.sw5-selected strong{background:var(--sw5-forest);color:#fff;font-weight:700}
.sw5-strip-day:disabled{opacity:.35}
.sw5-toggle{display:flex!important;align-items:flex-start;gap:12px;padding:14px;background:var(--sw5-card);border:1px solid var(--sw5-line);border-radius:14px;margin:12px 0 0!important}
.sw5-toggle span{display:flex;flex-direction:column;gap:2px}
.sw5-toggle small{font-size:.76rem;color:var(--sw5-muted)}

/* ---------- Coach HQ additions ---------- */
.sw5-roster-filter{margin:14px 0 4px}
.sw5-type-online{background:#e6ecf1!important;color:#30495c!important}
.sw5-type-in_person{background:#f2e6c9!important;color:#5a4a24!important}
.sw5-type-hybrid{background:#e3e8dc!important;color:#2d4d3b!important}
.sw5-type-select{display:inline-flex!important;align-items:center;gap:6px;font-size:.8rem}
.sw5-type-select select{width:auto;padding:6px 8px}

@media(max-width:380px){
 .sw5-tiles{gap:6px}.sw5-ring-lg{width:124px;height:124px}.sw5-ring-sm{width:88px;height:88px}
 .sw5-set-row{grid-template-columns:22px repeat(3,minmax(0,1fr)) 32px;gap:5px}
 .sw5-slider{grid-template-columns:70px 1fr 52px}
}
section.sw5-app{background:transparent;border:0;box-shadow:none;border-radius:0}
#sw-main[hidden]~footer{display:none}
/* Sign out lives in More while the client app is showing; keep the bar button for onboarding-pending accounts. */
body.sw-signed-in:has(#sw-client-home:not([hidden])) #sw-session #sw-logout{display:none}
.sw5-moved{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.sw5-moved p{margin:0}
.sw5-status-moved{background:#e6ecf1;color:#30495c}
/* The label/field rules above must never override the hidden attribute (e.g. Body Progress shows tape OR scan fields). */
.sw5-app [hidden],.sw5-logger [hidden],#sw-coach-workout [hidden]{display:none!important}
.sw5-option.sw5-disabled{opacity:.55;cursor:default}
/* Coach HQ Training History */
.sw5-history-head h4{font-size:1.02rem;margin:4px 0 2px}
.sw5-history-counts{font-size:.85rem;font-weight:600;margin:6px 0 10px}
.sw5-history-session{border:1px solid var(--sw5-line);border-radius:14px;background:#fffdf9;margin:8px 0;padding:0}
.sw5-history-session summary{display:grid;grid-template-columns:86px 1fr auto;gap:10px;align-items:center;padding:10px 12px;cursor:pointer;list-style:none}
.sw5-history-session summary::-webkit-details-marker{display:none}
.sw5-history-date{font-size:.8rem;color:var(--sw5-muted);font-variant-numeric:tabular-nums}
.sw5-history-title{display:flex;flex-direction:column;gap:2px;min-width:0}
.sw5-history-title small{font-size:.74rem;color:var(--sw5-muted)}
.sw5-history-body{padding:0 12px 10px;border-top:1px solid var(--sw5-line)}
.sw5-history-ex{margin:10px 0 2px;font-size:.88rem}
.sw5-history-set{margin:2px 0;font-size:.84rem;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.sw5-status-completed{background:var(--sw5-forest);color:#fff}
.sw5-status-partial,.sw5-status-logged{background:#e6d9bb;color:#5a4a24}
.sw5-status-missed{background:#f1dcd6;color:#7a3524}
.sw5-status-skipped{background:#ece7dc;color:var(--sw5-muted)}
.sw5-status-recovery{background:#e3e8dc;color:var(--sw5-forest)}
.sw5-status-planned{background:#e6ecf1;color:#30495c}
@media(max-width:420px){.sw5-history-session summary{grid-template-columns:1fr auto}.sw5-history-date{grid-column:1/-1}}
.sw5-reschedule{margin-top:12px}
.sw5-reschedule.sw5-card{margin:12px 0 0!important;background:#fffdf9!important}
.sw5-move-warn .sw5-warning{margin:6px 0;padding:8px 12px}
/* Six bottom tabs (Body Progress is its own tab). */
#sw-v41-bottom button{flex:1 1 0;min-width:0}
.sw5-status-checkin{background:#eef0e6;color:var(--sw5-forest)}

/* V5.1 food entry */
.sw51-food-list{display:grid;gap:8px;margin:8px 0}.sw51-food-item{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px;border:1px solid var(--sw5-line);border-radius:12px}.sw51-food-item>div{min-width:0}.sw51-food-item small{display:block;white-space:normal}.sw51-food-form{display:grid;gap:10px;padding:12px 0}.sw51-food-form label{display:grid;gap:5px;font-size:.85rem;font-weight:600}.sw51-food-form input,.sw51-food-form select{width:100%;min-width:0;padding:11px;border:1px solid var(--sw5-line);border-radius:10px;background:var(--sw5-card);color:inherit;font:inherit}.sw51-food-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.sw51-error{color:#a03a32;white-space:normal}

/* V5.1.1: quiet botanical branding and unified training/history surfaces */
:root{--sw5-muted:#6b756b;--sw5-line:#dedbd1}
.sw5-tabs{background:#f0eee8!important;border:1px solid #e3e0d6!important}
.sw5-tabs button[aria-pressed=true]{background:var(--sw5-forest)!important;color:#fff!important}
.sw5-reschedule:not(.sw5-card){padding:12px;border:1px solid #cbd4c8;border-radius:15px;background:#f1f3ed}
.sw5-reschedule .sw5-btn{white-space:normal;text-align:center;min-height:44px}
.sw5-moved-in{background:#eef2eb!important;border-color:#c3d0c1!important}
.sw5-schedule-help{margin:16px 4px!important;line-height:1.6}
.sw5-history-intro{padding:8px 4px 14px}
.sw5-history-intro h3{font-family:Georgia,serif;font-size:1.55rem;font-weight:400;color:#344f3e;margin:4px 0}
#sw491-history-content,#sw496-history-results{background:#faf9f5;border-radius:20px;padding:clamp(10px,2vw,22px)}
#sw491-history-list .sw491-history-card,.sw5-history-session{border:1px solid #dddcd3!important;border-radius:17px!important;background:#fffdf9!important;box-shadow:0 2px 12px #273f2c0a;margin:10px 0!important;overflow:hidden}
#sw491-history-list .sw491-history-card{padding:16px!important}
.sw5-history-session summary{padding:16px!important;gap:12px!important}
.sw5-history-session[open] summary{background:#f4f5ef}
.sw5-history-body{padding:12px 16px 18px!important}
.sw5-history-ex{font-family:Georgia,serif;color:#344f3e;font-size:1.03rem!important;margin:16px 0 8px!important}
.sw5-history-set{background:#f3f4ef;border-radius:9px;padding:9px 12px;margin:5px 0!important;line-height:1.5}
.sw5-history-head{padding:14px;background:#f0f2eb;border-radius:14px;margin-bottom:12px}
.sw5-history-head h4{font-family:Georgia,serif;font-size:1.3rem!important;color:#344f3e}
.sw5-history-date{font-weight:650}
.sw5-history-title small{line-height:1.45}
@media(max-width:520px){.sw5-history-session summary{grid-template-columns:1fr auto!important}.sw5-history-date{grid-column:1/-1}}

/* V5.1.3 invite links */
.sw5-join{background:#f1f3ed;border:1px solid #cbd4c8;border-radius:16px;padding:16px 18px;margin:0 0 16px}
.sw5-join h3{font-family:Georgia,serif;font-weight:400;font-size:1.5rem;color:#344f3e;margin:4px 0 6px}
.sw5-join p{margin:4px 0;line-height:1.5}
.sw5-join-kicker{font-size:.7rem!important;letter-spacing:.14em;font-weight:700;color:var(--sw5-muted)}
.sw5-invites{background:#faf9f5;border:1px solid var(--sw5-line);border-radius:18px;padding:16px;margin:0 0 16px}
.sw5-invite-head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.sw5-invite-head h3{margin:0;font-family:Georgia,serif;font-weight:400;font-size:1.3rem;color:#344f3e}
.sw5-invite-form{display:grid;gap:10px;margin-top:12px}
.sw5-invite-form input,.sw5-invite-form select,.sw5-invite-link input{width:100%;padding:11px 12px;border:1px solid var(--sw5-line);border-radius:12px;background:#fffdf9;font-size:16px}
.sw5-invite-type{display:flex!important;align-items:center;gap:8px;font-size:.9rem}
.sw5-invite-type select{width:auto}
.sw5-invite-actions{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0}
.sw5-invite-link{display:grid;gap:8px;background:#fffdf9;border:1px solid #cbd4c8;border-radius:14px;padding:12px;margin-top:12px}
.sw5-invite-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 0;border-bottom:1px solid var(--sw5-line)}
.sw5-invite-row span{display:flex;flex-direction:column;min-width:0}
.sw5-invite-row small{color:var(--sw5-muted);font-size:.78rem;overflow-wrap:anywhere}
.sw5-welcome{max-width:560px;margin:24px auto;padding:0 16px}
.sw5-welcome h2{font-family:Georgia,serif;font-weight:400;font-size:1.8rem;color:#344f3e;margin:6px 0 10px}
.sw5-welcome[hidden],.sw5-invite-form[hidden]{display:none!important}
/* V5.2 daily checklist */
.sw5-habits h3{font-family:var(--sw5-serif);font-size:1.35rem;font-weight:600;margin:0 0 4px!important;color:var(--sw5-ink)}
.sw5-habits .sw5-label{margin:0 0 2px!important}
.sw5-habit-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.sw5-habit-styles{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px;margin-top:12px}
.sw5-habit-style{display:flex;flex-direction:column;gap:4px;text-align:left;background:#fffdf9;border:1px solid var(--sw5-line-strong);border-radius:14px;padding:12px 14px;color:var(--sw5-ink);cursor:pointer;white-space:normal}
.sw5-habit-style strong{font-family:var(--sw5-serif);font-size:1.15rem}
.sw5-habit-style small{color:var(--sw5-muted);font-size:.8rem;line-height:1.4}
.sw5-habit-style[aria-checked=true]{border-color:var(--sw5-forest);box-shadow:inset 0 0 0 1px var(--sw5-forest);background:#eef0e6}
.sw5-habit-min{display:flex!important;align-items:center;gap:10px;margin:10px 0 4px;font-weight:600;font-size:.9rem}
.sw5-habit-auto{margin-left:auto;font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;color:var(--sw5-olive)}
.sw5-habit-flash{margin:10px 0 0;padding:10px 12px;border-radius:12px;background:#e6e8dc;color:var(--sw5-forest);font-weight:600}
.sw5-habit-edit{list-style:none;padding:0;margin:0}
.sw5-habit-edit li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:8px 0;border-bottom:1px solid var(--sw5-line);font-size:.92rem}
.sw5-habit-hidden span{color:var(--sw5-muted);text-decoration:line-through}
.sw5-habit-add{display:flex;gap:8px;margin-top:10px}
.sw5-habit-add input{flex:1;min-width:0}
.sw5-habit-coach{margin:10px 0;padding:10px 12px;border:1px solid var(--sw5-line);border-radius:12px;background:#fffdf9}
.sw5-habit-coach p{margin:0 0 6px;font-size:.86rem}
.sw5-habit-dots{display:flex;gap:6px;flex-wrap:wrap}
.sw5-habit-dot{min-width:38px;text-align:center;padding:4px 6px;border-radius:999px;border:1px solid var(--sw5-line-strong);font-size:.72rem;color:var(--sw5-muted);font-variant-numeric:tabular-nums}
.sw5-habit-dot.sw5-part{background:var(--sw5-sand);color:var(--sw5-ink)}
.sw5-habit-dot.sw5-done{background:var(--sw5-forest);border-color:var(--sw5-forest);color:#fff}
/* V5.3 onboarding form */
.sw53-intake h3{font-family:var(--sw5-serif);font-size:1.35rem;font-weight:600;margin:4px 0 6px!important;color:var(--sw5-ink)}
.sw53-intake .sw5-label{margin:0 0 6px!important}
.sw53-intake .sw5-field{display:flex;flex-direction:column;gap:6px;margin:12px 0}
.sw53-intake .sw5-field textarea,.sw53-intake .sw5-field input,.sw53-intake .sw5-field select{width:100%;box-sizing:border-box}
.sw53-bar{height:6px;border-radius:99px;background:var(--sw5-sand);overflow:hidden;margin:0 0 10px}
.sw53-bar span{display:block;height:100%;background:var(--sw5-olive)}
.sw53-note{background:#eef0e6;border-radius:12px;padding:10px 12px;font-size:.86rem;color:var(--sw5-forest);margin:6px 0 10px}
.sw53-caution{background:#f6ead3;color:#6b4a12}
.sw53-ack{display:flex!important;gap:10px;align-items:flex-start;font-size:.88rem;margin:14px 0}
.sw53-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:14px}
.sw53-actions .sw5-btn{flex:1}
.sw53-later{display:block;margin:12px auto 0}
.sw53-next{margin:18px 2px 8px!important}
.sw53-coach{margin-top:16px}
.sw53-coach-form{border:1px solid var(--sw5-line);border-radius:14px;background:#fffdf9;padding:12px 14px;margin:10px 0}
.sw53-coach-form summary{display:flex;flex-wrap:wrap;gap:4px 10px;align-items:center;cursor:pointer}
.sw53-coach-form summary small{flex-basis:100%;color:var(--sw5-muted)}
.sw53-flag{font-size:.76rem;font-weight:700;color:#8a4b0f;background:#f6ead3;border-radius:999px;padding:3px 10px}
.sw53-answer{display:flex;flex-direction:column;gap:2px;margin:6px 0;font-size:.88rem}
.sw53-answer strong{font-weight:600;color:var(--sw5-muted);font-size:.8rem}
.sw53-answer span{white-space:pre-wrap}
/* V5.3.1 Today's Schedule on Home */
.sw5-home-schedule{margin-top:12px}
.sw5-home-schedule .sw5-habit-head{align-items:baseline}
.sw5-slot-home{grid-template-columns:22px 64px 1fr auto;cursor:pointer}
.sw5-slot-home.sw5-slot-untimed{grid-template-columns:22px 1fr auto}
.sw5-slot-home input{width:20px!important;height:20px;margin:0;accent-color:var(--sw5-forest)}
.sw5-slot-done .sw5-slot-block{text-decoration:line-through;opacity:.55}
.sw5-slot-past{opacity:.5}
.sw5-slot-next .sw5-slot-block{box-shadow:inset 0 0 0 1px var(--sw5-forest);font-weight:600}
.sw5-slot-tag{font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;color:var(--sw5-forest);font-weight:700}
.sw5-savebar .sw5-discard{color:#f3eee5!important;font-weight:500;margin-left:auto}
.sw5-habits .sw5-habit-group{margin:16px 0 0!important}
.sw5-habits .sw5-habit-group+.sw5-habit-styles{margin-top:8px}
/* V5.5 automatic saving */
.sw5-savechip{position:fixed;z-index:997;left:50%;transform:translateX(-50%);bottom:calc(82px + env(safe-area-inset-bottom));padding:6px 14px;border-radius:999px;background:var(--sw5-forest);color:#f3eee5;font-size:.8rem;font-weight:600;box-shadow:0 4px 14px #1f3a2d33;pointer-events:none}
/* V5.5 logger: bigger ticks, alarm, summary */
.sw5-set-row{grid-template-columns:28px repeat(3,minmax(0,1fr)) 44px}
.sw5-check input{width:44px!important;height:44px}
.sw5-check span{width:40px;height:40px;border-radius:10px}
.sw5-check span .sw5-icon{width:22px;height:22px}
@media (max-width:380px){.sw5-set-row{grid-template-columns:22px repeat(3,minmax(0,1fr)) 42px}}
.sw5-timer-top{display:flex;justify-content:space-between;align-items:center;gap:10px}
.sw5-timer-top .sw5-label{margin:0!important}
.sw5-timer-sound{display:flex!important;align-items:center;gap:6px;font-size:.82rem;font-weight:600;color:var(--sw5-forest)}
.sw5-timer-ring-done .sw5-timer-dial{animation:sw5-pulse 1s ease-in-out 3}
@keyframes sw5-pulse{50%{transform:scale(1.06)}}
@media (prefers-reduced-motion:reduce){.sw5-timer-ring-done .sw5-timer-dial{animation:none}}
.sw5-done-card{margin-top:14px;padding:14px 16px;border-radius:14px;background:#eef0e6}
.sw5-done-card h4{font-family:var(--sw5-serif);font-size:1.3rem;margin:0 0 6px!important;color:var(--sw5-forest)}
.sw5-done-stats{display:flex;flex-wrap:wrap;gap:6px 16px;margin:0 0 6px;font-size:.9rem;font-variant-numeric:tabular-nums}
.sw5-done-stats strong{font-size:1.15rem}
.sw5-bests{margin:0;padding-left:18px;font-size:.88rem}
/* V5.5 Coach HQ → Today */
.sw55-today-head h3{font-family:var(--sw5-serif);font-size:1.4rem;margin:0 0 2px!important}
.sw55-client{border:1px solid var(--sw5-line);border-radius:14px;background:#fffdf9;padding:12px 14px;margin:10px 0}
.sw55-client summary{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;cursor:pointer;list-style:none}
.sw55-client summary::-webkit-details-marker{display:none}
.sw55-client summary small{color:var(--sw5-muted)}
.sw55-chips{flex-basis:100%;display:flex;flex-wrap:wrap;gap:6px}
.sw55-chip{font-size:.74rem;font-weight:600;border-radius:999px;padding:3px 10px;background:var(--sw5-sand);color:var(--sw5-ink)}
.sw55-chip-new{background:var(--sw5-forest);color:#fff}
.sw55-st-trained{background:var(--sw5-forest)!important;color:#fff!important}
.sw55-st-progress,.sw55-st-recovery{background:#e6e8dc!important;color:var(--sw5-forest)!important}
.sw55-st-notyet{background:#f6ead3!important;color:#6b4a12!important}
.sw55-st-awaiting{background:#ece6f5!important;color:#4b3a6b!important}
.sw55-profile{margin-top:10px;border-top:1px solid var(--sw5-line);padding-top:10px}
.sw55-facts{display:grid;grid-template-columns:auto 1fr;gap:4px 12px;margin:0 0 10px;font-size:.88rem}
.sw55-facts dt{color:var(--sw5-muted)}
.sw55-facts dd{margin:0}
.sw55-actions{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:6px}
/* V5.5 View as client (read-only) */
.sw55-viewbar{position:sticky;top:0;z-index:1000;display:flex;justify-content:space-between;align-items:center;gap:10px;padding:calc(8px + env(safe-area-inset-top)) 16px 8px;background:#4b3a6b;color:#fff;font-size:.86rem;font-weight:600}
.sw55-viewbar button{background:#fff;color:#4b3a6b;border:0;border-radius:999px;padding:7px 14px;font-weight:700;white-space:nowrap}
.sw55-viewing #sw-client-home input:not(#sw-client-week):not(#sw-client-day),
.sw55-viewing #sw-client-home textarea,
.sw55-viewing #sw-client-home select:not(#sw-client-week):not(#sw-client-day),
.sw55-viewing #sw-client-home .sw5-check,
.sw55-viewing #sw-client-home .sw5-habit-style{pointer-events:none}
.sw55-viewing .sw5-save-btn,.sw55-viewing #sw5-savebar,.sw55-viewing .sw5-savechip,.sw55-viewing .sw5-logger-actions,
.sw55-viewing .sw5-habits .sw5-link,.sw55-viewing .sw5-home-schedule .sw5-link,.sw55-viewing .sw5-add,.sw55-viewing .sw5-account .sw5-btn,
.sw55-viewing #sw494-progress,.sw55-viewing .sw5-reschedule,.sw55-viewing #sw5-cycle-save,.sw55-viewing .sw53-later,.sw55-viewing .sw53-actions{display:none!important}
.sw55-viewbar[hidden]{display:none}
/* V5.5 header, greeting, tips */
.sw5-app-on #sw-session{display:none!important}
body.sw-signed-in #sw-owner-nav{display:flex;gap:4px;max-width:360px;margin:8px auto 4px!important;padding:3px!important;background:var(--sw5-sand)!important;border-radius:999px!important}
body.sw-signed-in #sw-owner-nav[hidden]{display:none!important}
body.sw-signed-in #sw-owner-nav button{flex:1;border:0!important;background:transparent!important;padding:7px 10px!important;border-radius:999px!important;font-size:.84rem;font-weight:600;color:var(--sw5-forest)!important;box-shadow:none!important}
body.sw-signed-in #sw-owner-nav button[aria-current=page]{background:var(--sw5-forest)!important;color:#fff!important}
.sw5-hero-slim{padding-top:14px!important;padding-bottom:14px!important}
.sw5-hero-slim .sw5-brand,.sw5-hero-slim>p:not(.sw5-brand){display:none}
.sw5-hero-slim h2{font-size:1.45rem!important}
.sw5-hero-slim h2 br{display:none}
.sw5-hero-slim h2 strong{margin-left:.3em}
.sw55-tour h3,.sw55-install h3{font-family:var(--sw5-serif);font-size:1.25rem;margin:0!important}
.sw55-tour-list{margin:8px 0 0;padding-left:20px;font-size:.9rem;line-height:1.5}
.sw55-tour-list li+li{margin-top:6px}
.sw55-tour-done{color:var(--sw5-muted);text-decoration:line-through}
.sw47-tabs{display:flex!important;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.sw47-tabs::-webkit-scrollbar{display:none}
.sw47-tabs button{flex:0 0 auto;padding:10px 14px!important;white-space:nowrap}
/* V6.0 adaptive intake and client profile */
.sw6-q{display:flex;flex-direction:column;gap:6px;margin:12px 0}
.sw6-help{color:var(--sw5-muted);font-size:.78rem}
.sw6-multi{margin-top:2px}
.sw6-multi .sw5-chip{white-space:normal;text-align:left}
.sw6-scale{display:grid;grid-template-columns:repeat(11,minmax(0,1fr));gap:4px}
.sw6-scale button{padding:9px 0;border-radius:8px;border:1px solid var(--sw5-line-strong);background:#fffdf9;color:var(--sw5-ink);font-weight:600;font-variant-numeric:tabular-nums}
.sw6-scale button[aria-checked=true]{background:var(--sw5-forest);border-color:var(--sw5-forest);color:#fff}
.sw6-savenote{text-align:center;margin:8px 0 0}
.sw6-summary{display:grid;grid-template-columns:auto 1fr;gap:6px 12px;margin:10px 0 14px;font-size:.9rem}
.sw6-summary dt{color:var(--sw5-muted)}
.sw6-summary dd{margin:0}
.sw6-assess .sw5-label{margin:12px 0 4px!important}
.sw6-list{margin:0;padding-left:18px;font-size:.88rem;line-height:1.5}
.sw6-list li+li{margin-top:4px}
.sw6-flag-urgent{color:#8a1f12;font-weight:700}
.sw6-flag-review{color:#6b4a12}
.sw6-muted{color:var(--sw5-muted)}
.sw6-urgent{background:#f7d9d2!important;color:#8a1f12!important}
.sw6-raw,.sw6-versions,.sw6-version{margin-top:10px}
.sw6-raw summary,.sw6-versions summary,.sw6-version summary,.sw6-add summary{cursor:pointer;font-weight:600;color:var(--sw5-forest);font-size:.88rem}
.sw6-section{border-top:1px solid var(--sw5-line);padding-top:10px;margin-top:12px}
.sw6-section-title{font-family:var(--sw5-serif);font-size:1.15rem;margin:0 0 6px!important;color:var(--sw5-ink)}
.sw6-record{padding:8px 10px;border-radius:10px;background:var(--sw5-bg);margin:6px 0;font-size:.88rem}
.sw6-record p{margin:2px 0}
.sw6-record small{color:var(--sw5-muted)}
.sw6-note-coach{border-left:3px solid #4b3a6b}
.sw6-note-client{border-left:3px solid var(--sw5-forest)}
.sw6-add-form{display:flex;flex-direction:column;gap:8px;margin:8px 0}
.sw6-add-form input,.sw6-add-form textarea,.sw6-add-form select{border:1px solid var(--sw5-line);background:#fffdf9;border-radius:12px;padding:10px 12px;font-size:16px;color:var(--sw5-ink)}
/* V6.1 check-ins */
.sw61-due{border-color:var(--sw5-forest)!important}
.sw61-due-row{display:flex;justify-content:space-between;align-items:center;width:100%;text-align:left;background:#fffdf9;border:1px solid var(--sw5-line-strong);border-radius:12px;padding:12px 14px;margin-top:8px;cursor:pointer;color:var(--sw5-ink)}
.sw61-due-row span{display:flex;flex-direction:column;gap:2px}
.sw61-due-row small{color:var(--sw5-muted)}
.sw61-go{font-size:1.4rem;color:var(--sw5-forest)}
.sw61-trend{width:100%;border-collapse:collapse;font-size:.82rem;font-variant-numeric:tabular-nums}
.sw61-trend th,.sw61-trend td{padding:5px 6px;border-bottom:1px solid var(--sw5-line);text-align:left}
.sw61-trend th{color:var(--sw5-muted);font-weight:600}
.sw61-trend-wrap{overflow-x:auto}
.sw61-cont h5{margin:10px 0 4px;font-size:.82rem;letter-spacing:.08em;text-transform:uppercase}
.sw61-keep{color:var(--sw5-forest)}.sw61-adjust{color:#6b4a12}.sw61-progress{color:#2d5a8a}.sw61-reassess{color:#8a1f12}
.sw61-chip-due{background:#f6ead3;color:#6b4a12}
/* V6.2 Daily Rhythm */
.sw62-modes{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;padding:3px;margin:10px 0 6px;border-radius:999px;background:var(--sw5-sand)}
.sw62-modes button{border:0;background:transparent;border-radius:999px;padding:8px 4px;font-weight:600;font-size:.86rem;color:var(--sw5-forest);cursor:pointer}
.sw62-modes button[aria-checked=true]{background:var(--sw5-forest);color:#fff}
.sw62-hint{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:6px 0;padding:8px 12px;border-radius:12px;background:#eef0e6;font-size:.86rem}
.sw62-momentum span{font-style:italic}
.sw62-namefield{display:flex;flex-direction:column;gap:6px;margin:14px 0 4px}
.sw62-item{flex-direction:column;align-items:stretch!important;gap:6px}
.sw62-item-top{display:flex;align-items:center;gap:10px}
.sw62-item-name{flex:1;min-width:0;border:1px solid transparent!important;background:transparent!important;padding:6px 8px!important;border-radius:8px!important}
.sw62-item-name:focus{border-color:var(--sw5-line-strong)!important;background:#fffdf9!important}
.sw62-rule{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.sw62-when{font-size:.82rem!important;padding:6px 10px!important;border-radius:999px!important}
.sw62-days{display:flex;gap:4px}
.sw62-days .sw5-chip{padding:5px 9px;font-size:.78rem}
.sw62-min{display:flex!important;align-items:center;gap:8px;font-size:.82rem;color:var(--sw5-muted)}
/* V6.2 nutrition journal */
.sw62-track{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:3px;border-radius:999px;background:var(--sw5-sand);margin:6px 0 4px}
.sw62-track button{border:0;background:transparent;border-radius:999px;padding:8px;font-weight:600;color:var(--sw5-forest);cursor:pointer}
.sw62-track button[aria-checked=true]{background:var(--sw5-forest);color:#fff}
.sw62-track-note{text-align:center;margin:4px 0 10px!important}
.sw62-share{display:flex!important;gap:10px;align-items:flex-start;background:var(--sw5-card);border:1px solid var(--sw5-line);border-radius:14px;padding:12px 14px;margin:0 0 12px;font-size:.88rem}
.sw62-share span{display:flex;flex-direction:column;gap:2px}
.sw62-photos{margin:6px 0 10px}
.sw62-thumbs{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:8px}
.sw62-thumb{margin:0;border:1px solid var(--sw5-line);border-radius:12px;overflow:hidden;background:#fffdf9}
.sw62-thumb img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover;background:var(--sw5-sand)}
.sw62-thumb figcaption{display:flex;flex-direction:column;gap:4px;padding:6px}
.sw62-thumb figcaption input{font-size:14px!important;padding:6px 8px!important}
.sw62-file{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.sw62-addphoto{margin-top:8px}
.sw62-details{margin:6px 0}
.sw62-details summary{cursor:pointer;font-weight:600;color:var(--sw5-forest);margin:6px 0}
.sw62-tools{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0}
.sw62-barcode,.sw62-saved{border:1px dashed var(--sw5-line-strong);border-radius:12px;padding:10px 12px;margin:8px 0}
.sw62-code-row{display:flex;gap:6px;flex-wrap:wrap}
.sw62-code-row input{flex:1;min-width:0}
.sw62-portion{display:flex;gap:6px;margin:8px 0}
.sw62-portion input{width:90px}
.sw62-video{width:100%;max-height:220px;border-radius:12px;background:#000;margin-top:8px}

/* V6.3 — daily direction */
.sw63-identity .sw63-day-focus{font-weight:650;margin:12px 0;padding:10px 12px;border-left:3px solid var(--sw5-accent,#648a77);background:rgba(112,148,122,.08);border-radius:5px}
.sw63-identity textarea{width:100%;box-sizing:border-box}

/* V6.5 coach draft workout scrub */
.sw65-scrub-row{display:flex;align-items:center;gap:.55rem;padding:.65rem .4rem;border-bottom:1px solid rgba(80,100,80,.18)}
.sw65-scrub-name{flex:1;min-width:0;overflow-wrap:anywhere}.sw65-scrub-row button{min-width:2.4rem;min-height:2.4rem;touch-action:manipulation}
/* V6.5.1 Program Studio weekly preview */
#sw64-preview-content{white-space:normal}.sw65-prev-title{font-weight:700;margin:.2rem 0 .6rem}
.sw65-prev-day{border-top:1px solid rgba(80,100,80,.18);padding:.45rem 0}.sw65-prev-day summary{cursor:pointer;font-weight:600;min-height:2.2rem;display:flex;align-items:center}
.sw65-prev-day ol{margin:.3rem 0 .4rem 1.2rem;padding:0}.sw65-prev-day li{margin:.3rem 0}.sw65-prev-day p{margin:.3rem 0}
/* V6.5.4 in-workout order and swaps */
.sw5-order{list-style:none;margin:.6rem 0;padding:0}.sw5-order-row{display:flex;align-items:center;gap:.4rem;padding:.35rem 0;border-bottom:1px solid rgba(80,100,80,.18)}
.sw5-order-row.sw5-selected .sw5-order-name{font-weight:700}.sw5-order-name{flex:1;min-width:0;text-align:left;background:none;border:0;padding:.55rem .2rem;color:inherit;font:inherit;overflow-wrap:anywhere}
.sw5-swap{margin:.5rem 0;padding:.5rem .7rem;border:1px solid rgba(80,100,80,.25);border-radius:12px}.sw5-swap summary{cursor:pointer;font-weight:600;min-height:2.2rem;display:flex;align-items:center}
.sw5-swap-other{display:flex;gap:.4rem;margin-top:.5rem}.sw5-swap-other input{flex:1;min-width:0}
/* V6.5.5 workout preview on Training → Today */
.sw5-preview{margin:.8rem 0 .2rem;border-top:1px solid rgba(80,100,80,.18);padding-top:.5rem}.sw5-preview summary{cursor:pointer;font-weight:700;min-height:2.4rem;display:flex;align-items:center}
.sw5-preview-list{margin:.2rem 0;padding-left:1.4rem}.sw5-preview-list li{margin:.15rem 0}
.sw5-preview-item{display:flex;flex-direction:column;align-items:flex-start;gap:.1rem;width:100%;text-align:left;background:none;border:0;padding:.5rem .2rem;color:inherit;font:inherit;border-bottom:1px solid rgba(80,100,80,.12)}
.sw5-preview-plan{display:block}
/* V6.6 swap flow */
.sw5-swap-why{display:grid;gap:.4rem;margin:.3rem 0 .6rem}.sw5-swap-why .sw5-option{padding:.6rem .75rem}
.sw5-swap-list{display:grid;gap:.5rem;margin:.3rem 0 .6rem}
.sw5-swap-opt{display:flex;flex-direction:column;align-items:flex-start;gap:.15rem;text-align:left;padding:.75rem .9rem;border-radius:14px;border:1px solid rgba(80,100,80,.28);background:#fff;color:inherit;font:inherit}
.sw5-swap-opt small{color:#5d6b60}.sw5-swap-opt[aria-pressed="true"]{border-color:var(--sw5-forest);box-shadow:inset 0 0 0 2px var(--sw5-forest);background:#eef2ea}
.sw5-swap-pain p{margin:.2rem 0 .6rem}
/* V6.9 hold timers */
.sw5-hold-grid .sw5-set-row{grid-template-columns:28px minmax(0,1fr) 44px}
.sw5-hold-grid.sw5-hold-sides .sw5-set-row{grid-template-columns:28px repeat(2,minmax(0,1fr)) 44px}
.sw5-hold{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:3.4rem;border-radius:14px;border:1px solid var(--sw5-line);background:#fffdf9;color:inherit;font:inherit;padding:.3rem}
.sw5-hold small{font-size:.72rem;color:#6a786d}.sw5-hold strong{font-size:1.05rem}
.sw5-hold.sw5-hold-running{background:var(--sw5-forest)!important;color:#fff!important;border-color:var(--sw5-forest)!important;opacity:1!important}.sw5-hold.sw5-hold-running small,.sw5-hold.sw5-hold-running strong{color:#fff!important;opacity:1!important}
.sw5-hold-done{background:#eef2ea;border-color:#9fb39f}
/* V6.11 food app logging */
.sw611-applog{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border:1px solid var(--sw5-line);border-radius:999px;background:#fffdf9;font-size:.85rem;white-space:nowrap;cursor:pointer}
.sw611-applog input{width:18px!important;height:18px;accent-color:var(--sw5-forest);margin:0}
.sw611-applog.sw611-on{background:#eef2ea;border-color:#9fb39f;font-weight:600}
.sw611-app-head{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end;justify-content:space-between}
.sw611-app-name{display:flex;flex-direction:column;gap:2px;min-width:12rem;flex:1}
.sw62-addrow{display:flex;flex-wrap:wrap;gap:8px}
.sw62-shot img{object-fit:contain;background:#fff}
.sw62-shot-tag{display:block;font-weight:600;color:#4f6b58}
/* V6.13 cardio add-on */
.sw613-head{display:flex;gap:12px;align-items:center}.sw613-head h3{margin:0}.sw613-head p{margin:2px 0 0}
.sw613-form{display:grid;gap:10px;margin-top:10px}.sw613-dist{display:flex;gap:6px;align-items:flex-end}.sw613-dist .sw5-field{flex:1}.sw613-dist select{width:4.5rem}
.sw5-status-cardio{background:#e3ecf2;color:#244b63}
.sw5-chip[aria-checked=true]:hover,.sw5-chip[aria-pressed=true]:hover,.sw62-track button[aria-checked=true]:hover{background:var(--sw5-forest);color:#fff;border-color:var(--sw5-forest)}
.sw613-form .sw5-mini-grid{align-items:end}
/* V6.14 daily check-in switch, focus timer, cycle on Home */
.sw614-switch{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:space-between;margin:0 0 10px}
.sw614-ampm{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:3px;border-radius:999px;background:var(--sw5-sand);flex:1;min-width:14rem}
.sw614-ampm button{display:flex;align-items:center;justify-content:center;gap:6px;border:0;background:transparent;border-radius:999px;padding:9px 10px;font-weight:600;color:var(--sw5-forest);cursor:pointer}
.sw614-ampm button .sw5-icon{width:18px;height:18px}
.sw614-ampm button[aria-selected=true],.sw614-ampm button[aria-selected=true]:hover{background:var(--sw5-forest);color:#fff}
.sw614-focus-toggle .sw5-icon{width:16px;height:16px}
.sw614-focus{display:grid;gap:10px}.sw614-top{display:flex;gap:12px;align-items:center}.sw614-top h3{margin:0}.sw614-top p{margin:2px 0 0}
.sw614-clock{display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 0}
.sw614-time{font:600 3rem/1 ui-monospace,SFMono-Regular,Menlo,monospace;font-variant-numeric:tabular-nums;color:var(--sw5-forest)}
.sw614-running .sw614-time{color:#2f6b49}
.sw614-cycle{padding:4px 6px}.sw614-hide{display:block;margin:0 0 6px auto;font-size:.8rem}
.sw614-ampm.sw614-three{grid-template-columns:repeat(3,minmax(0,1fr));min-width:100%}
.sw614-three button{padding:9px 6px;gap:4px;font-size:.92rem}
/* V6.15 reminders */
.sw615-page{display:grid;gap:12px}.sw615-groups{display:grid;gap:12px}.sw615-off{opacity:.6}
.sw615-toggle{display:flex;gap:10px;align-items:flex-start;margin:8px 0}.sw615-toggle input{width:20px;height:20px;accent-color:var(--sw5-forest);margin-top:2px}
.sw615-times{display:grid;gap:8px;margin:6px 0}.sw615-row{display:flex;gap:10px;align-items:flex-end}
.sw615-time{display:flex;align-items:center;justify-content:space-between;gap:10px;flex:1}.sw615-time input{max-width:9rem}
.sw615-when{display:flex;flex-direction:column;gap:4px;margin:10px 0}.sw615-when label{display:flex;align-items:center;justify-content:space-between;gap:10px}.sw615-when input{max-width:9rem}
.sw615-rest{display:flex;gap:10px;align-items:center;padding:12px;border:1px solid var(--sw5-line);border-radius:14px;margin:8px 0;background:#fffdf9;cursor:pointer}
.sw615-rest input{width:22px;height:22px;accent-color:var(--sw5-forest)}.sw615-rest.sw615-on{background:#eef2ea;border-color:#9fb39f}
.sw615-msg{min-height:1.2em}
/* V6.16 content command center (Coach HQ) */
.sw616{display:grid;gap:12px}.sw616 h3{margin:0}.sw616 h4{margin:14px 0 6px}
.sw616-head{display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;align-items:flex-end}.sw616-head p{margin:2px 0 0}
.sw616-stats{display:flex;align-items:center;gap:8px}.sw616-stats strong{font-size:1.4rem;color:var(--sw5-forest)}.sw616-stats select{width:auto}
.sw616-add{display:flex;gap:8px}.sw616-add input{flex:1;min-width:0}
.sw616-views{display:flex;flex-wrap:wrap;gap:6px}.sw616-views button{border-radius:20px}.sw616-views button[aria-pressed=true]{background:var(--sw5-forest);color:#fff}
.sw616-weeknav{display:flex;align-items:center;justify-content:space-between;gap:10px}
.sw616-day{border:1px solid #d8d5c9;border-radius:14px;padding:8px 10px;background:#fff}.sw616-today{border-color:var(--sw5-forest);box-shadow:inset 3px 0 0 var(--sw5-forest)}
.sw616-dayhead{display:flex;justify-content:space-between;align-items:center;font-weight:600;color:var(--sw5-forest)}.sw616-dayhead button{min-width:2.4rem}
.sw616-empty{margin:2px 0;font-size:.85rem}
.sw616-list{display:grid;gap:6px;margin:6px 0}
.sw616-card{display:flex;flex-direction:column;align-items:flex-start;gap:2px;text-align:left;width:100%;padding:10px 12px;border-radius:12px;border:1px solid #d7d6c9;background:#faf9f3;color:inherit;border-left:5px solid #b9b39c}
.sw616-card small{color:#68786a}.sw616-hooks{border-left-color:#c9a86a}.sw616-script{border-left-color:#b98a5e}.sw616-filmed,.sw616-edited{border-left-color:#6f8f9a}.sw616-scheduled{border-left-color:var(--sw5-forest)}.sw616-posted{border-left-color:var(--sw5-forest)}
.sw616-editor{display:grid;gap:10px;padding:12px;border:1px solid #d7d6c9;border-radius:14px;background:#fff}
.sw616-editor label{display:flex;flex-direction:column;gap:4px}.sw616-editor textarea,.sw616-editor input[type=text],.sw616-editor input[type=url]{width:100%}
.sw616-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px}
.sw616-tip{margin:0;padding:8px 10px;border-radius:10px;background:#eef2ea;font-size:.85rem}
.sw616-hooks,.sw616-checks,.sw616-results{border:1px solid #e1ddd0;border-radius:12px;padding:8px 10px;display:grid;gap:6px}
.sw616-hook{display:flex;gap:8px;align-items:center}.sw616-hook input[type=text]{flex:1}
.sw616-check{flex-direction:row!important;align-items:center;gap:8px!important}
.sw616-tags{color:#9a5b3c}.sw616-tags.sw616-ok{color:#2f6b49}
.sw616-actions{display:flex;flex-wrap:wrap;gap:6px}.sw616-del{margin-left:auto;color:#9a3c3c!important}
.sw616-status{min-height:1.2em;margin:0;font-size:.85rem;color:#68786a}
.sw616-rules ul{margin:0 0 6px 1.1rem;padding:0}.sw616-rules li{margin:3px 0}
/* V6.16 progress photos */
.sw616-photos{display:grid;gap:10px;margin:0 0 16px;padding:0 0 14px;border-bottom:1px solid #d8d5c9}.sw616-photos h3,.sw616-photos h4{margin:4px 0}
.sw616-add-photo{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end}.sw616-add-photo label{display:flex;flex-direction:column;gap:4px;margin:0!important}
.sw616-thumb img{aspect-ratio:3/4;object-fit:cover}
.sw616-cmp-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}.sw616-cmp{margin:0}.sw616-cmp img{width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:12px;background:#eee}
.sw616-cmp figcaption{font-size:.85rem;margin-top:4px}.sw616-cmp-pick{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.sw616-compare{display:grid;gap:8px}
.sw616-editor input[type=radio],.sw616-editor input[type=checkbox]{width:auto!important;flex:0 0 auto;margin:0}
.sw616-hook input[type=text]{min-width:0}

/* V7.2: Fraunces' decorative ampersand reads like "@"; take just the "&" from Georgia. */
@font-face{font-family:"SW Amp";src:local("Georgia"),local("Georgia-Regular"),local("Times New Roman"),local("Noto Serif"),local("NotoSerif-Regular");font-weight:400;unicode-range:U+0026}@font-face{font-family:"SW Amp";src:local("Georgia Bold"),local("Georgia-Bold"),local("Times New Roman Bold"),local("Noto Serif Bold"),local("NotoSerif-Bold");font-weight:600 700;unicode-range:U+0026}
/* ===== V7.0 Strong & Well design system =====
   Cream #F7F3EC, forest #1F3B33 (primary), terracotta #A9552F only for the one main action on a
   screen (.sw5-cta), sand #EDE6DA, white cards with #E3DDD2 borders, ink #1F2A26.
   Fraunces for headings and the coach's voice; Inter for data and UI. No gradients. */
:root{
 --sw5-bg:#F7F3EC;--sw5-card:#FFFFFF;--sw5-line:#E3DDD2;--sw5-line-strong:#D6CEC0;
 --sw5-forest:#1F3B33;--sw5-forest-2:#2A4C42;--sw5-ink:#1F2A26;--sw5-muted:#66706A;
 --sw5-sand:#EDE6DA;--sw5-accent:#A9552F;--sw5-accent-2:#8F4626;--sw5-radius:18px;
 --sw5-serif:"SW Amp","Fraunces",Georgia,"Times New Roman",serif;
 --sw5-sans:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;
}
body,body.sw-signed-in{background:var(--sw5-bg)!important;color:var(--sw5-ink);font-family:var(--sw5-sans)}
.sw5-app,.sw5-logger,#sw-coach,#sw-v41-bottom,#sw-owner-nav,.sw5-app button,.sw5-app input,.sw5-app select,.sw5-app textarea{font-family:var(--sw5-sans)}
.sw5-app h2,.sw5-app h3,.sw5-ex-title,.sw5-q,.sw5-focus h3,.sw47-workspace h2,.sw47-workspace h3,.sw616 h3,.sw5-history-intro h3{font-family:var(--sw5-serif)!important;color:var(--sw5-ink);letter-spacing:-.005em}
.sw5-card,.sw616-day,.sw616-editor,.sw47-page,.sw47-result{background:var(--sw5-card)!important;border:1px solid var(--sw5-line)!important;border-radius:var(--sw5-radius)!important}
.sw5-hero{background:var(--sw5-forest)!important;border-radius:20px 20px 0 0!important}
.sw5-hero:after{display:none!important}
.sw5-hero h2,.sw5-brand{font-family:var(--sw5-serif)!important}
.sw5-focus{background:var(--sw5-bg)!important}
.sw5-btn,.sw5-pill,.sw5-chip,.sw5-iconbtn,#sw-v41-bottom button{min-height:44px}
.sw5-btn{background:var(--sw5-forest);border-color:var(--sw5-forest);color:#FFFFFF}
.sw5-btn:hover{background:var(--sw5-forest-2)}
.sw5-btn.sw5-cta,.sw5-btn.sw5-cta:hover{background:var(--sw5-accent)!important;border-color:var(--sw5-accent)!important;color:#FFFFFF!important}
.sw5-btn.sw5-cta:active{background:var(--sw5-accent-2)!important}
.sw5-tabs{background:var(--sw5-sand)!important;border-color:var(--sw5-line)!important}
#sw-v41-bottom{background:#FFFFFFF2!important;border-top:1px solid var(--sw5-line)!important}
#sw-v41-bottom button{color:var(--sw5-muted)!important}
#sw-v41-bottom button.sw-v41-active{color:var(--sw5-forest)!important;font-weight:600}
.sw5-quote{font-family:var(--sw5-serif)!important}
.sw47-tabs button[aria-pressed="true"],.sw616-views button[aria-pressed=true]{background:var(--sw5-forest)!important;color:#fff!important}
.sw5-hero h2,.sw5-hero h2 strong,.sw5-hero p{color:#FFFFFF!important}
.sw5-ring-value{font-family:var(--sw5-sans)!important;font-variant-numeric:tabular-nums}
.sw5-ring-value input{-moz-appearance:textfield;appearance:textfield}
.sw5-ring-value input::-webkit-inner-spin-button,.sw5-ring-value input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
/* V7.1 progress photos: Front / Side / Back check-in and before/after slider */
.sw616-date{display:flex;flex-direction:column;gap:4px;max-width:220px;margin:0!important}
.sw616-set{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.sw616-slot{display:flex;flex-direction:column;gap:6px;min-width:0}
.sw616-slot img,.sw616-slot-add{width:100%;aspect-ratio:3/4;border-radius:12px;object-fit:cover;background:var(--sw5-sand)}
.sw616-slot-add{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;border:1.5px dashed #C9C0B1;color:var(--sw5-forest);font-weight:600;cursor:pointer;margin:0!important}
.sw616-plus{font-size:1.6rem;line-height:1}
.sw616-slot-foot{display:flex;justify-content:space-between;align-items:center;gap:4px;font-size:.9rem;min-height:24px}
.sw616-slot-foot .sw5-link{min-height:0;font-size:.85rem;cursor:pointer}
.sw616-slider{position:relative;width:100%;max-width:420px;aspect-ratio:3/4;border-radius:14px;overflow:hidden;background:var(--sw5-sand);touch-action:pan-y;cursor:ew-resize;user-select:none;-webkit-user-select:none}
.sw616-slider img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;pointer-events:none}
.sw616-before{position:absolute;inset:0}
.sw616-handle{position:absolute;top:0;bottom:0;width:2px;margin-left:-1px;background:#FFFFFF;box-shadow:0 0 0 1px rgba(31,42,38,.25);pointer-events:none}
.sw616-handle:after{content:"";position:absolute;top:50%;left:50%;width:36px;height:36px;margin:-18px 0 0 -18px;border-radius:50%;background:#FFFFFF;border:2px solid var(--sw5-forest);box-shadow:0 1px 4px rgba(0,0,0,.2)}
.sw616-tag{position:absolute;top:10px;padding:3px 9px;border-radius:999px;background:rgba(31,59,51,.82);color:#FFFFFF;font-size:.75rem;font-weight:600;letter-spacing:.04em;pointer-events:none}
.sw616-tag-l{left:10px}.sw616-tag-r{right:10px}
.sw616-range{position:absolute;left:0;bottom:0;width:1px!important;height:1px!important;min-height:0!important;margin:0;opacity:0;overflow:hidden}
.sw616-slider:focus-within{outline:2px solid var(--sw5-forest);outline-offset:2px}
.sw616-cmp-caps{display:flex;justify-content:space-between;gap:8px;font-size:.85rem;max-width:420px}
.sw616-cmp-pick label{display:flex;flex-direction:column;gap:2px;margin:0!important}
.sw616-row .sw616-thumb{min-width:0}
.sw494-card input[type=number]{-moz-appearance:textfield}.sw494-card input[type=number]::-webkit-inner-spin-button,.sw494-card input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
/* V7.3 program sections */
.sw5-block-tag{margin:6px 0 -2px;font-size:.75rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--sw5-forest)}
.sw5-preview-block{display:block;list-style:none;margin:10px 0 2px -1.4rem;font-size:.72rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--sw5-forest)}
.sw5-preview-block:first-child{margin-top:0}
/* V7.4 machine setup */
.sw74-setup{margin:6px 0}
.sw74-saved{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;padding:8px 12px;border-radius:12px;background:var(--sw5-sand);border:1px solid var(--sw5-line)}
.sw74-label{font-size:.72rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--sw5-forest);margin:0}
.sw74-values{flex:1 1 auto;font-weight:600;color:var(--sw5-ink)}
.sw74-saved .sw5-link{min-height:0}
.sw74-add{min-height:36px!important;font-size:.9rem}
.sw74-edit{display:grid;gap:8px;padding:12px;border-radius:14px;background:#fff;border:1px solid var(--sw5-line)}
.sw74-row{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) 44px;gap:6px;align-items:center}
.sw74-row input,.sw74-edit>input{width:100%;min-width:0}
.sw74-picks{flex-wrap:wrap}.sw74-picks .sw5-chip{min-height:36px;padding:6px 12px;font-size:.85rem}
.sw74-actions{display:flex;gap:8px;flex-wrap:wrap}
/* ===== V7.5 Coach HQ, organized ===== */
#sw-coach .sw47-workspace{max-width:1180px!important}
#sw-coach .sw47-workspace>.muted{display:none}
.sw47-tabs button[hidden]{display:none!important}
.sw75-h{font-family:var(--sw5-sans)!important;font-size:.78rem!important;font-weight:600!important;letter-spacing:.08em;text-transform:uppercase;color:var(--sw5-forest)!important;margin:18px 0 8px!important}
/* Today: Needs you + today's clients */
.sw75-needs{border:1px solid var(--sw5-line);border-radius:16px;background:#fff;padding:12px 14px;margin:12px 0 4px}
.sw75-needs .sw75-h{margin-top:2px!important}
.sw75-todo{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.sw75-todo-item{display:grid;grid-template-columns:minmax(90px,auto) 1fr auto;gap:10px;align-items:center;width:100%;min-height:48px;text-align:left;padding:10px 12px;border-radius:12px;border:1px solid var(--sw5-line);background:var(--sw5-bg);color:var(--sw5-ink);font:inherit;cursor:pointer}
.sw75-todo-item.sw75-flag{border-color:#D9A38A;background:#FBF1EC}
.sw75-todo-item:hover,.sw75-row:hover{border-color:var(--sw5-forest)}
.sw75-go{font-size:1.4rem;color:var(--sw5-forest);line-height:1}
.sw75-clear{margin:4px 0;color:var(--sw5-forest);font-weight:600}
.sw75-row{display:grid!important;grid-template-columns:minmax(120px,200px) 1fr auto;gap:8px 12px;align-items:center;width:100%;text-align:left;font:inherit;color:var(--sw5-ink);cursor:pointer;min-height:56px}
.sw75-row-main{display:flex;flex-direction:column;gap:2px}.sw75-row-main small{color:var(--sw5-muted)}
@media (max-width:640px){.sw75-row{grid-template-columns:1fr auto}.sw75-row .sw55-chips{grid-column:1/-1;grid-row:2}.sw75-todo-item{grid-template-columns:1fr auto}.sw75-todo-item strong{grid-column:1/-1}}
/* Clients: list + client page */
.sw75-split{display:grid;grid-template-columns:minmax(260px,340px) minmax(0,1fr);gap:18px;align-items:start}
.sw75-list .sw48-client-card{cursor:pointer;padding:14px!important}
.sw75-list .sw48-client-card[aria-current="true"]{border-color:var(--sw5-forest)!important;box-shadow:inset 4px 0 0 var(--sw5-forest)!important}
.sw75-list .sw48-actions{gap:6px}.sw75-list .sw48-actions button{min-height:40px;padding:8px 12px}
.sw75-list .sw48-hint{display:none}
.sw75-client{position:sticky;top:8px;border:1px solid var(--sw5-line);border-radius:18px;background:#fff;padding:16px;min-height:300px}
.sw75-empty{display:grid;place-items:center;text-align:center;min-height:260px;align-content:center}
.sw75-empty-title{font-family:var(--sw5-serif);font-size:1.3rem;margin:0;color:var(--sw5-ink)}
.sw75-head{display:grid;gap:8px}
.sw75-who{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.sw75-who h2{margin:0!important;font-size:1.6rem!important}.sw75-who p{margin:0}
.sw75-back{display:none;justify-self:start;background:none;border:0;color:var(--sw5-forest);font:inherit;font-weight:600;min-height:44px;padding:0;cursor:pointer}
.sw75-sections{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:4px;margin:12px 0;padding:4px;border-radius:14px;background:var(--sw5-sand)}
.sw75-sections button{min-height:44px;border:0;border-radius:10px;background:transparent;color:var(--sw5-ink);font:inherit;font-weight:600;cursor:pointer}
.sw75-sections button[aria-pressed="true"]{background:var(--sw5-forest);color:#fff}
.sw75-view .sw55-profile{border:0;padding:0}
.sw75-actions{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}
.sw75-field{display:flex;flex-direction:column;gap:4px;max-width:260px;font-weight:600}
.sw75-danger{color:#9a3c3c!important;border-color:#d8b4a8!important}
/* Training section: the logger and history without their old client pickers and toggles */
.sw75-view #sw47-train>h3,.sw75-view #sw47-train>p,.sw75-view #sw47-show-logger,.sw75-view #sw48-train-client,.sw75-view #sw47-logger-slot:empty{display:none!important}
.sw75-view label:has(#sw-coach-client),.sw75-view label:has(#sw496-history-client){display:none!important}
.sw75-view .sw-panel>h3{display:none}
.sw75-view .sw-panel,.sw75-view #sw496-history{margin:0 0 8px!important;padding:12px!important;border-radius:14px!important;background:var(--sw5-bg)!important;border:1px solid var(--sw5-line)!important}
.sw75-view #sw496-history>h3,.sw75-view #sw496-history>p:first-of-type{display:none}
/* Programs: back to the client */
.sw75-backbar{display:flex;flex-wrap:wrap;align-items:center;gap:4px;margin:0 0 10px;padding:8px 12px;border-radius:12px;background:var(--sw5-sand)}
.sw75-backbar .sw5-link{font-weight:600}
.sw75-tool{margin-top:14px}
/* Phone and narrow iPad: one column; the open client replaces the list */
@media (max-width:899px){
 .sw75-split{grid-template-columns:1fr}
 .sw75-client{position:static;display:none}
 .sw75-clients.sw75-open .sw75-client{display:block}
 .sw75-clients.sw75-open .sw75-list{display:none}
 .sw75-back{display:inline-flex;align-items:center}
}
@media (max-width:420px){.sw75-sections button{font-size:.85rem}}
#sw-coach .sw47-tabs{display:flex!important;flex-wrap:wrap;gap:6px!important}
#sw-coach .sw47-tabs button{flex:1 1 auto;min-width:0}
@media (max-width:640px){
 .sw75-client{padding:12px}
 .sw75-sections{gap:2px;padding:3px}
 .sw75-sections button{font-size:.82rem;padding:0 2px;letter-spacing:-.01em}
 .sw75-who h2{font-size:1.35rem!important}
}
@media (max-width:640px){#sw-coach .sw47-tabs{flex-wrap:nowrap;gap:4px!important}#sw-coach .sw47-tabs button{font-size:.8rem!important;padding:9px 4px!important;flex:1 1 0}}
/* ===== V7.7 check-ins and messages ===== */
@media (max-width:640px){.sw75-sections{grid-template-columns:repeat(3,minmax(0,1fr))}}
.sw77-weeks{margin:4px 0 10px;flex-wrap:wrap}
.sw77-weeks .sw5-chip[aria-selected="true"]{background:var(--sw5-forest);color:#fff;border-color:var(--sw5-forest)}
.sw77-checkin{display:grid;gap:12px}
.sw77-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px}.sw77-head h4{margin:0;font-family:var(--sw5-serif);font-size:1.3rem;color:var(--sw5-ink)}
.sw77-tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
@media (max-width:700px){.sw77-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}
.sw77-tile{display:flex;flex-direction:column;gap:2px;padding:12px;border-radius:14px;background:var(--sw5-bg);border:1px solid var(--sw5-line);min-width:0}
.sw77-tile strong{font-size:1.25rem;color:var(--sw5-ink)}.sw77-tile small{color:var(--sw5-muted);font-size:.78rem}
.sw77-tile-label{font-size:.7rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--sw5-forest)}
.sw77-notes{display:grid;grid-template-columns:1fr 1fr;gap:8px}
@media (max-width:700px){.sw77-notes{grid-template-columns:1fr}}
.sw77-note{padding:12px;border-radius:14px;border:1px solid var(--sw5-line);background:#fff}.sw77-note p,.sw77-note ul{margin:4px 0 0}.sw77-note ul{padding-left:1.1rem}
.sw77-win{border-left:4px solid var(--sw5-forest)}.sw77-struggle{border-left:4px solid #C9A86A}
.sw77-reply{display:flex;flex-direction:column;gap:6px}.sw77-reply textarea{width:100%;min-height:96px}
.sw77-thread{display:flex;flex-direction:column;gap:8px;max-height:60vh;overflow-y:auto;padding:8px 2px;margin-bottom:8px}
.sw77-msg{align-self:flex-start;max-width:82%;padding:10px 12px;border-radius:16px 16px 16px 4px;background:var(--sw5-sand);color:var(--sw5-ink)}
.sw77-msg p{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.sw77-msg small{display:block;margin-top:4px;font-size:.72rem;color:var(--sw5-muted)}
.sw77-mine{align-self:flex-end;border-radius:16px 16px 4px 16px;background:var(--sw5-forest);color:#fff}.sw77-mine small{color:#D7E0DB}
.sw77-compose{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:end}.sw77-compose textarea{width:100%;min-height:48px}
.sw77-empty{text-align:center;padding:20px 0}
.sw77-badge{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:var(--sw5-accent);color:#fff;font-size:.72rem;font-weight:700;margin-left:6px}
/* Today: keep in touch */
.sw77-keep{border:1px solid var(--sw5-line);border-radius:16px;background:#fff;padding:12px 14px;margin:10px 0 4px}
.sw77-keep .sw75-h{margin-top:2px!important}
.sw75-sections{display:flex!important;flex-wrap:wrap}
.sw75-sections button{flex:1 1 auto;padding:0 12px;white-space:nowrap}
@media (max-width:640px){.sw75-sections button{flex:1 1 30%;padding:0 4px}}
/* V7.8 Evolt nutrition plan */
.sw78-plan{display:block;margin:10px 0 6px;padding-top:10px;border-top:1px solid var(--sw5-line);font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--sw5-forest)}
.sw78-source{text-align:center;margin:4px 0 10px}
.sw78-form{display:grid;gap:8px;margin:0 0 12px;padding:12px;border:1px solid var(--sw5-line);border-radius:14px;background:#fff}
.sw78-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.sw78-grid label{display:flex;flex-direction:column;gap:4px;font-size:.85rem;font-weight:600;min-width:0}
.sw78-grid input{width:100%;min-width:0;text-align:center}
@media (max-width:420px){.sw78-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* V7.9 Coach HQ: compact client list that never spills under the client page */
.sw75-split{grid-template-columns:minmax(240px,300px) minmax(0,1fr)}
.sw75-list{min-width:0}
.sw75-list .sw48-client-card{min-width:0;overflow:hidden;padding:12px!important;border-radius:16px!important;box-shadow:none!important}
.sw75-list .sw48-client-top{flex-wrap:wrap;align-items:center;gap:4px 10px}
.sw75-list .sw48-avatar{width:40px;height:40px;border-radius:12px;font-size:1rem}
.sw75-list .sw48-client-top>div:not(.sw48-avatar){flex:1 1 calc(100% - 52px);min-width:0}
.sw75-list .sw48-client-top h3{font:600 1.05rem/1.25 var(--sw5-sans)!important;color:var(--sw5-ink)!important;overflow-wrap:anywhere}
.sw75-list .sw48-client-top p{margin:2px 0 0;font-size:.78rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sw75-list .sw48-pill{margin-left:0;font-size:.68rem;padding:3px 8px}
.sw75-list .sw48-client-top>.sw48-pill:first-of-type{margin-left:50px}
.sw75-list .sw48-actions{margin-top:10px}
.sw75-list .sw48-actions button{min-height:36px;padding:6px 10px!important;font-size:.82rem!important}
.sw75-list .sw5-roster-filter{flex-wrap:wrap;gap:6px}
.sw75-list .sw5-roster-filter .sw5-chip{min-height:36px;padding:6px 12px}
.sw75-list>.row{display:flex;align-items:center;justify-content:space-between;gap:8px}
.sw75-list>.row h3{font-size:1.1rem!important;margin:0!important}
.sw75-list #sw47-refresh{min-height:36px;padding:6px 12px;font-size:.85rem}
#sw-coach .sw47-workspace>h2{font-size:1.6rem!important;margin:2px 0 12px!important}
#sw-coach .sw47-kicker{margin:0!important}
@media (min-width:641px){.sw75-sections{flex-wrap:nowrap!important;overflow-x:auto}.sw75-sections button{font-size:.9rem;padding:0 8px;min-width:0}}
.sw75-who{gap:8px 12px}.sw75-who .sw48-pill{margin-left:0}
/* V7.9 drinks and alcohol-free days; cycle modes */
.sw79-drinks{display:grid;gap:6px}
.sw79-drinks-head{display:flex;justify-content:space-between;align-items:center}
.sw79-drinks-head .sw5-link{min-height:0;font-size:.85rem}
.sw79-drink{display:grid;grid-template-columns:1fr 40px 34px 40px;gap:8px;align-items:center;padding:6px 0;border-top:1px solid var(--sw5-line)}
.sw79-drink span{display:flex;flex-direction:column}.sw79-drink small{color:var(--sw5-forest);font-size:.75rem}
.sw79-drink .sw5-iconbtn{width:40px;height:40px;min-height:40px}
.sw79-count{text-align:center;font-weight:700;font-variant-numeric:tabular-nums}
.sw79-free strong::after{content:"";}
.sw79-plan{display:grid;gap:8px;padding-top:8px;border-top:1px solid var(--sw5-line)}
.sw79-days .sw5-chip{min-width:48px;justify-content:center}
.sw79-days .sw5-chip[aria-pressed="true"]{background:var(--sw5-forest);color:#fff;border-color:var(--sw5-forest)}
.sw79-modes{flex-wrap:wrap;margin:6px 0 10px}
.sw79-modes .sw5-chip[aria-checked="true"]{background:var(--sw5-forest);color:#fff;border-color:var(--sw5-forest)}
.sw79-carried{margin:4px 0 8px;padding:8px 12px;border-radius:12px;background:var(--sw5-sand)}
.sw79-app-totals{text-align:center;margin:4px 0}
/* V7.9 Evolt scans */
.sw79-evolt{display:grid;gap:10px;margin:0 0 16px;padding:0 0 14px;border-bottom:1px solid var(--sw5-line)}.sw79-evolt h3{margin:4px 0}
.sw79-form{display:grid;gap:8px;padding:12px;border:1px solid var(--sw5-line);border-radius:14px;background:#fff}
.sw79-field{display:flex;flex-direction:column;gap:4px;font-weight:600}
.sw79-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
@media (max-width:520px){.sw79-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.sw79-grid label{display:flex;flex-direction:column;gap:4px;font-size:.8rem;font-weight:600;min-width:0}.sw79-grid input{width:100%;min-width:0}
.sw79-scan{display:grid;gap:6px;padding:12px;border:1px solid var(--sw5-line);border-radius:14px;background:#fff}
.sw79-scan p{margin:0}.sw79-scan-head{display:flex;align-items:center;justify-content:space-between;gap:8px}
.sw79-plan-line{color:var(--sw5-forest);font-weight:600}
.sw79-notes{padding:10px 12px;border-radius:12px;background:#EEF2EA;border-left:4px solid var(--sw5-forest)}.sw79-notes p{white-space:pre-wrap;margin-top:4px}
.sw79-interpret label{display:flex;flex-direction:column;gap:6px}.sw79-interpret textarea{width:100%}
.sw79-scan a.sw5-btn{justify-self:start}
.sw79-box{margin-top:18px;padding-top:6px;border-top:1px solid var(--sw5-line);display:grid;gap:10px}
.sw5-meal-drinks{background:radial-gradient(circle at 35% 35%,#a9c7c0,#4f7d73)}
.sw79-presets{flex-wrap:wrap;margin:6px 0}.sw79-presets .sw5-chip{min-height:36px;padding:6px 12px;font-size:.85rem}
.sw79-plan-toggle{min-height:0;font-size:.9rem;justify-self:start}
/* V7.10 focus timer as a daily task */
.sw5-checklist li:has(.sw710-focus-go){display:flex;align-items:center;gap:8px}.sw5-checklist li:has(.sw710-focus-go)>label{flex:1}
.sw710-focus-go{min-height:34px;padding:4px 12px;font-size:.82rem}
/* ===== V7.11 Today, person-first ===== */
.sw5-hero.sw711-hero{display:flex!important;justify-content:space-between;align-items:center;gap:12px;background:transparent!important;border-radius:0!important;padding:8px 2px 4px!important;min-height:0!important;box-shadow:none!important}
.sw5-hero.sw711-hero h2,.sw5-hero.sw711-hero h2 strong,.sw5-hero.sw711-hero p{color:var(--sw5-ink)!important}
.sw5-hero.sw711-hero h2{margin:2px 0 0!important;font-family:var(--sw5-serif)!important;font-weight:500!important;font-size:1.75rem!important;line-height:1.15!important}
.sw5-hero.sw711-hero h2 strong{font-weight:500}
.sw711-date{margin:0!important;font-size:.82rem;color:var(--sw5-muted)!important}
.sw711-avatar{flex:0 0 44px;width:44px;height:44px;border-radius:50%;border:0;background:var(--sw5-forest);color:#F7F3EC;font-family:var(--sw5-serif);font-size:.9rem;cursor:pointer}
.sw711-goal{display:grid;gap:4px;margin:10px 0;padding:14px 16px;border-radius:18px;background:var(--sw5-sand);border:0;text-align:left;font:inherit;color:var(--sw5-ink);width:100%;box-sizing:border-box}
.sw711-goal-empty{cursor:pointer;border:1.5px dashed #C9C0B1;background:transparent}
.sw711-goal-head{display:flex;justify-content:space-between;align-items:center}
.sw711-goal-head .sw5-link{min-height:0;font-size:.85rem}
.sw711-goal-label{margin:0;font-size:.78rem;color:var(--sw5-muted);font-weight:500}
.sw711-goal-text{margin:0;font-family:var(--sw5-serif);font-size:1.08rem;line-height:1.4}
.sw711-goal textarea{width:100%;font:inherit}
.sw711-where{padding:16px!important}
.sw711-q{margin:0 0 8px;font-weight:600;font-size:.95rem}
.sw711-moods{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.sw711-moods button{min-height:48px;padding:4px;border-radius:12px;border:1px solid var(--sw5-line);background:var(--sw5-bg);color:var(--sw5-ink);font:inherit;font-size:.85rem;cursor:pointer}
.sw711-moods button[aria-checked="true"]{border-color:var(--sw5-forest);background:var(--sw5-forest);color:#F7F3EC;font-weight:600}
.sw711-ready{margin:8px 0 0}
.sw711-full{display:block;margin-top:8px;min-height:0;font-size:.85rem;font-weight:600}
.sw711-rec{margin:12px 0;padding:16px;border-radius:20px;background:var(--sw5-forest);color:#F7F3EC;display:grid;gap:4px}
.sw711-rec h2{margin:0!important;font-family:var(--sw5-serif)!important;font-weight:500!important;font-size:1.4rem!important;color:#F7F3EC!important}
.sw711-rec-label{margin:0;font-size:.78rem;color:#C9D8CF}
.sw711-rec-desc{margin:0 0 10px;font-size:.85rem;color:#E6EEE9}
.sw711-rec .sw5-cta{min-height:50px}
.sw711-rec-all{margin-top:6px;background:none;border:0;color:#E6EEE9;text-decoration:underline;font:inherit;font-size:.85rem;min-height:36px;cursor:pointer}
.sw711-row{display:flex;justify-content:space-between;align-items:center;width:100%;margin:8px 0;padding:12px 16px;min-height:56px;border-radius:16px;border:1px solid var(--sw5-line);background:#fff;font:inherit;color:var(--sw5-ink);text-align:left;cursor:pointer}
.sw711-row small{display:block;font-size:.75rem;color:var(--sw5-muted)}.sw711-row strong{font-size:.92rem}
.sw711-note{display:flex;gap:12px;width:100%;margin:8px 0;padding:12px 16px;border-radius:16px;border:1px solid var(--sw5-line);background:#fff;font:inherit;color:var(--sw5-ink);text-align:left;cursor:pointer}
.sw711-note-av{flex:0 0 36px;width:36px;height:36px;border-radius:50%;background:var(--sw5-forest);color:#F7F3EC;display:grid;place-items:center;font-family:var(--sw5-serif);font-size:.72rem}
.sw711-note small{display:block;font-size:.75rem;color:var(--sw5-muted)}.sw711-note-text{font-family:var(--sw5-serif);font-size:.98rem;line-height:1.4}
.sw711-check-title{font-family:var(--sw5-serif)!important;font-weight:500!important;font-size:1.6rem!important;margin:10px 0!important}
.sw711-check{display:grid;gap:14px;padding:16px!important}
.sw711-metric-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:6px}.sw711-metric-head small{color:var(--sw5-muted);font-size:.75rem}
.sw711-scale{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}
.sw711-scale button{height:44px;border-radius:12px;border:1px solid var(--sw5-line);background:var(--sw5-bg);color:var(--sw5-ink);font:inherit;font-size:.95rem;cursor:pointer}
.sw711-scale button[aria-checked="true"]{background:var(--sw5-forest);border-color:var(--sw5-forest);color:#F7F3EC;font-weight:600}
.sw711-score{display:flex;align-items:center;gap:16px;padding:14px 18px;border-radius:18px;background:var(--sw5-forest);color:#F7F3EC}
.sw711-score-n{font-family:var(--sw5-serif);font-size:2.4rem;font-weight:500;min-width:56px}
.sw711-score small{display:block;color:#C9D8CF;font-size:.8rem}.sw711-score strong{font-weight:500}
.sw711-note>span:last-child{flex:1;min-width:0}.sw711-note-text{display:block;white-space:normal;overflow-wrap:anywhere}
.sw711-avatar,.sw711-note-av{font-size:.68rem!important;letter-spacing:-.02em;padding:0}
#sw-client-home .sw5-today{margin-top:12px!important;border-radius:var(--sw5-radius,20px)!important}
.sw711-row>span{min-width:0}
/* V7.11.1 phone fixes: the app's general button style was overriding these */
.sw711-goal-empty{display:grid!important;gap:4px;white-space:normal!important;height:auto!important;min-height:0!important;padding:14px 16px!important;border-radius:18px!important;background:transparent!important;color:var(--sw5-ink)!important;box-shadow:none!important;text-align:left!important;font-weight:400!important}
.sw711-goal-empty span{display:block;white-space:normal;overflow-wrap:anywhere;font-size:.95rem;line-height:1.4}
.sw711-goal-empty .sw711-goal-label{font-size:.82rem}
.sw711-rec .sw711-rec-all{background:transparent!important;border:0!important;box-shadow:none!important;color:#E6EEE9!important;text-decoration:underline;font-weight:400!important;width:auto!important;justify-self:center;padding:6px 10px!important;min-height:40px!important}
.sw711-row,.sw711-note{white-space:normal!important;height:auto!important;font-weight:400!important}
.sw711-moods button{white-space:normal!important;line-height:1.2}
.sw711-version{text-align:center;margin:10px 0 0}
/* V7.12 applications */
.sw712{display:grid;gap:10px;margin:0 0 18px;padding:0 0 16px;border-bottom:1px solid var(--sw5-line)}
.sw712-head{display:flex;justify-content:space-between;align-items:center;gap:8px}.sw712-head h3{margin:0}
.sw712 .sw5-chips{flex-wrap:wrap}.sw712 .sw5-chip[aria-pressed="true"]{background:var(--sw5-forest);color:#fff;border-color:var(--sw5-forest)}
.sw712-app{display:grid;gap:6px;padding:14px;border:1px solid var(--sw5-line);border-radius:16px;background:#fff}
.sw712-app p{margin:0}.sw712-app textarea{width:100%}
.sw712-new{border-left:4px solid var(--sw5-accent)}
.sw712-app-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}
.sw712-app-head small{display:block;color:var(--sw5-muted)}.sw712-name{font-size:1.05rem}
.sw712-app-head select{width:auto;min-height:40px}
.sw712-contact a{color:var(--sw5-forest)}
