/* Physical imagery and hierarchy approved in the remaining-ideas review. */
.visual-menu{width:min(94vw,480px);max-height:90dvh;overflow:auto;padding:22px;background:var(--bg);color:var(--primary);border:1px solid var(--hair);border-radius:16px;box-shadow:var(--ceramic-shadow)}
.visual-menu::backdrop{background:rgb(0 0 0/.45)}
.visual-menu header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}
.visual-menu h2{font-size:24px;margin:0}.visual-menu header button{min-height:44px;min-width:44px;font-size:28px}
.visual-menu-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.visual-menu-grid button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;min-height:128px;border:1px solid var(--hair);border-radius:12px;background:var(--surface);box-shadow:var(--ceramic-shadow);color:var(--primary);padding:12px}
.visual-menu-grid button:first-child{grid-column:1/-1;min-height:145px}.visual-menu-grid .fi{width:70px!important;height:70px!important}.visual-menu-grid b{font-size:16px;line-height:1.4}.visual-menu button:disabled{opacity:.45}
.visual-object,.visual-food{display:block;width:72px;height:72px;object-fit:contain;flex:none}.visual-equipment{display:inline-flex;align-items:center;justify-content:center}.visual-equipment img{width:100%;height:100%;object-fit:contain}
.visual-macro{display:block;width:62px;height:48px;object-fit:contain;margin:0 auto 6px}.visual-fridge{display:block;width:100%;height:100%;object-fit:contain}.visual-meal-hero{width:100%;height:190px;object-fit:contain}
.visual-lift-line{display:flex;align-items:center;gap:18px}.visual-lift-line>span{display:block;width:110px;height:100px;flex:0 0 110px}.visual-lift-line img{max-width:100%;max-height:100%;object-fit:contain}.visual-lift-line b{font-size:17px}.visual-lift-line p{margin:8px 0}.visual-session-lift{margin:24px 0}.visual-session-lift summary{min-height:44px;cursor:pointer;padding:12px 0}.visual-recovery-door{display:flex;align-items:center;gap:18px;width:100%;padding:16px;margin:20px 0;background:var(--surface);border:1px solid var(--hair);border-radius:16px;color:var(--primary)}.visual-recovery-door img{width:54px;height:110px;object-fit:contain}.visual-recovery-door span{display:flex;flex-direction:column;text-align:left;gap:8px}.visual-recovery-door small{font-size:13px}.visual-complete-icon{width:88px!important;height:88px!important;margin:auto}
.visual-trend-art{width:90px;height:76px;display:flex;align-items:center;justify-content:center;flex:none}.visual-trend-art>*{width:100%;height:100%}.visual-trend-art img{width:100%;height:100%;object-fit:contain}.lifttrend{gap:14px}.lifttrend .nm{flex:1;min-width:0}.visual-day-icon{width:28px!important;height:28px!important;object-fit:contain;vertical-align:middle;margin-right:8px}
.visual-camera{display:block;position:relative;width:112px;height:78px;border:2px solid var(--accent);border-radius:16px;background:linear-gradient(145deg,#fff 0%,#78B6ED 20%,#4699DE 68%,#2870a8 100%);box-shadow:inset 0 4px 3px #ffffffa0,0 5px 0 #266c9f;margin:12px auto}
.visual-camera:before{content:'';position:absolute;width:40px;height:14px;top:-11px;left:17px;border-radius:6px 6px 0 0;background:var(--primary)}.visual-camera:after{content:'';position:absolute;width:12px;height:6px;right:10px;top:10px;background:#fff;border-radius:3px}.visual-camera i{position:absolute;left:33px;top:12px;width:48px;height:48px;border:7px solid #a9d5f5;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff,#78B6ED 22%,#24699e 65%);box-shadow:0 3px 4px #1c4a7266}
#visualHourglass{display:block;width:140px;height:168px;margin:0 auto 8px;overflow:visible;flex:none}#visualHourglass .sand-stream{animation:visual-sand .55s linear infinite}#visualHourglass.empty .sand-stream{display:none}@keyframes visual-sand{to{stroke-dashoffset:-14}}
.visual-coach-doors{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:18px 0}.visual-coach-doors button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:12px 5px;border:1px solid var(--hair);border-radius:12px;background:var(--surface);color:var(--primary);box-shadow:var(--ceramic-shadow)}.visual-coach-doors img{width:65px;height:70px;object-fit:contain}.visual-coach-doors b{font-size:14px}#ask.talking .visual-coach-doors{display:none}
html.auxe-approved body.pm-premium #sessTimerBox{display:flex!important;flex-direction:column!important;justify-content:center!important;align-items:center!important;height:auto!important;min-height:235px!important;width:100%!important;aspect-ratio:auto!important;padding:8px 0!important;box-shadow:none!important;background:none!important;border:0!important;overflow:visible!important}
html.auxe-approved body.pm-premium #sessTimerBox :is(.rr-body,.rr-restlab,.rr-ripples,.rf-ring){display:none!important}
@media(prefers-reduced-motion:reduce){#visualHourglass .sand-stream{animation:none}}
html.auxe-approved body.pm-premium #fhFridge .fr-ico{width:115px;height:150px;flex:0 0 115px;transform:none;background:none;box-shadow:none;border:0}
html.auxe-approved body.pm-premium #fhFridge .fr-ico img{filter:none!important}
html.auxe-approved body.pm-premium #fhPhoto .visual-camera{transform:none!important}
html.auxe-approved body.pm-premium :is(#fhBar,#fhLabel){transform:none!important;min-height:110px!important}
html.auxe-approved body.pm-premium #fhBar>svg{width:72px!important;height:72px!important;filter:drop-shadow(0 3px 0 #2870a833)}
html.auxe-approved body.pm-premium #fhLabel>svg{width:76px!important;height:92px!important;filter:drop-shadow(0 3px 0 #2870a833)}
html.auxe-approved body.pm-premium .we-art{width:82px!important;height:88px!important;flex:0 0 82px!important}.we-art .xth{width:100%;height:100%}.we-art .xth img{object-fit:contain;width:100%;height:100%}
html.auxe-approved body.pm-premium .es-pl{display:grid!important;grid-template-columns:76px 1fr;column-gap:12px;align-items:center}.es-pl .visual-home-movement{grid-row:1/3;width:76px;height:70px;display:block}.es-pl .visual-home-movement img{width:100%;height:100%;object-fit:contain}
html.auxe-approved body.pm-premium #srOut .sr-hero.rich.ex .sr-side{height:auto!important;min-height:210px!important;gap:12px!important}.visual-search-movement{flex:1;min-width:0;max-width:180px}.visual-search-movement .xth{display:block;width:100%;height:180px}.visual-search-movement img{width:100%;height:100%;object-fit:contain}
html.auxe-approved body.pm-premium #wfWeightHero{min-height:145px!important}html.auxe-approved body.pm-premium #wfWeightHero .wf-equipment-art{height:130px!important}
html.auxe-approved body.pm-premium #sessRest .rr-face{height:auto!important;min-height:250px!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important}
html.auxe-approved body.pm-premium #sessRest :is(.rr-ring,.rr-svg){display:none!important}
html.auxe-approved body.pm-premium #sessClock{position:static!important;transform:none!important;inset:auto!important;font-size:48px!important}
html.auxe-approved body.pm-premium #sessRest .rr-clock{position:static!important;transform:none!important;inset:auto!important}
html.auxe-approved body.pm-premium .visual-profile-object{width:76px!important;height:76px!important;object-fit:contain!important}
.fr-meal ul li:has(.visual-food){display:flex;align-items:center;gap:12px}.fr-meal ul .visual-food{width:48px;height:48px}
.phr-obj .visual-food{width:78px;height:78px;margin:auto}.phr-chip .visual-food{width:45px;height:45px}.visual-home-food{width:70px;height:70px;object-fit:contain;float:right}
.visual-menu button:focus-visible,.visual-recovery-door:focus-visible,.lifttrend:focus-visible{outline:3px solid var(--primary);outline-offset:4px}
.visual-edit-actions{display:flex;flex-direction:column;gap:12px}.visual-edit-actions button{min-height:52px;border:1px solid var(--hair);border-radius:12px;background:var(--surface);color:var(--primary);padding:14px}
.visual-coach-more summary{padding:14px 0;min-height:48px;cursor:pointer}#ask.talking .visual-coach-more,.visual-coach-more:has(#coachChips.hide){display:none}
html.kb-open #ask .visual-coach-doors,html.kb-open #ask .visual-coach-more{display:none}
html.auxe-approved body.pm-premium #sess.focus-workout #sessRest #sessTimerBox{display:flex!important;flex-direction:column!important;height:auto!important;min-height:235px!important;aspect-ratio:auto!important;background:none!important;box-shadow:none!important;border-radius:0!important;animation:none!important}
html.auxe-approved body.pm-premium #sess.focus-workout.rest-last #sessRest #sessTimerBox{display:none!important}
html.auxe-approved body.pm-premium #sess.focus-workout #sessRest #sessClock{position:static!important;inset:auto!important;font-size:48px!important;font-weight:700!important;letter-spacing:-1px!important;display:block!important;transform:none!important;line-height:1.15!important}
html.auxe-approved body.pm-premium #sess.focus-workout #sessRest #sessNext .rr-nxo{display:flex!important;width:72px!important;height:80px!important;align-items:center;justify-content:center;flex:none}
.visual-calendar-movement{display:inline-block;width:60px;height:60px;vertical-align:middle;margin-right:12px}.visual-calendar-movement img{width:100%;height:100%;object-fit:contain}
.visual-menu{margin:auto;overscroll-behavior:contain}.visual-menu button{touch-action:manipulation}.visual-menu button:hover:not(:disabled){border-color:var(--primary)}
@media(max-height:720px){.es-pl .visual-home-movement{height:48px}.visual-menu-grid button{min-height:100px}.visual-menu-grid button:first-child{min-height:110px}.visual-menu-grid .fi{width:48px!important;height:48px!important}#visualHourglass{height:120px;width:100px}}

.visual-calendar-hero{display:flex;align-items:center;gap:16px;margin:20px 0}.visual-calendar-hero .xth{width:100px;height:100px;display:block;flex:none}.visual-calendar-hero img{width:100%;height:100%;object-fit:contain}#aiFoodOut .visual-food{width:64px;height:64px;flex:0 0 64px}
