/* JoyFit E3: experiência acessível, sem quebrar estilos existentes. */
.jf-e3-goal-banner{grid-column:1/-1;display:flex;gap:16px;align-items:center;justify-content:space-between;padding:16px 21px;background:var(--card);border:1px solid var(--line);border-radius:15px;margin:0 0 12px}
.jf-e3-kicker{font-size:10px;letter-spacing:.13em;font-weight:750;color:var(--a);text-transform:uppercase}
.jf-e3-goal-banner p{margin:6px 0 10px;font-size:13px;color:var(--t);line-height:1.5}
.jf-e3-goal-tags{display:flex;gap:6px;flex-wrap:wrap}.jf-e3-goal-tags span{background:var(--soft);border:1px solid var(--line);border-radius:8px;padding:5px 9px;font-size:11px;color:var(--t2)}
.jf-e3-goal-banner>button,.jf-e3-modal-actions button{border-radius:9px!important;min-height:40px;padding:9px 14px;white-space:nowrap}
.ob-e3-skip{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:20px}.ob-e3-skip button{background:transparent;border:0;color:var(--t2);font-size:12px;text-decoration:underline;text-underline-offset:3px;cursor:pointer;padding:8px}
.jf-e3-choices .ob-option[aria-pressed="true"]{border-color:var(--a);background:var(--soft)}
.jf-e3-profile-goals,.jf-e3-reminder{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.jf-e3-profile-goals p,.jf-e3-reminder p{font-size:12px;color:var(--t2);margin:5px 0}.jf-e3-profile-goals h2{font-size:21px;margin:8px 0}
.jf-e3-reminder>div{flex:1;min-width:220px}.jf-e3-switch input{width:21px;height:21px;accent-color:var(--a)}
.jf-e3-goals-modal .box{max-width:565px;max-height:90dvh;overflow-y:auto}.jf-e3-goals-modal h2{margin:8px 0;font-size:23px}.jf-e3-goals-modal p{color:var(--t2);font-size:13px}
.jf-e3-goal-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:20px 0}.jf-e3-goal-options label{display:flex;align-items:center;gap:8px;min-height:49px;padding:11px;background:var(--soft);border:1px solid var(--line);border-radius:10px;cursor:pointer;font-size:12px}.jf-e3-goal-options input{accent-color:var(--a);width:19px;height:19px;flex-shrink:0}.jf-e3-modal-actions{display:flex;justify-content:flex-end;gap:8px}
.jp-e3-scene{isolation:isolate}.jp-e3-prop{position:absolute;left:12%;top:37%;font-size:75px;opacity:.9;transform:rotate(-13deg);filter:drop-shadow(0 8px 10px rgba(46,33,17,.12))}.jp-e3-scene{background:linear-gradient(145deg,var(--scene-a,#FDF3B5),var(--scene-b,#FFBCA1));}
.jp-e3-scene .jp-e3-prop{z-index:2;animation:jp-e3-prop-pop .65s ease both}
@keyframes jp-e3-prop-pop{from{transform:translateY(15px) rotate(-17deg);opacity:0}to{transform:translateY(0) rotate(-13deg);opacity:1}}
.jp-e3-party h2{font-family:Inter,system-ui,sans-serif!important;font-size:clamp(39px,9vw,55px)!important;letter-spacing:-.045em!important}.jp-e3-party>.jf-note{font-size:11px!important}
.jf-e3-latest{font-weight:700;color:var(--a)!important}.jf-weight-svg{max-width:100%;height:auto}.jf-result-chart,.jf-chart-scroll{min-width:0}.jf-chart-scroll{overflow-x:auto}.jf-chart-legend{display:flex;flex-wrap:wrap;gap:8px 16px}
#vc{width:100%;max-width:290px;aspect-ratio:9/16;height:auto;object-fit:contain;border-radius:16px;background:#1A1F28;display:block;margin:12px auto}.jf-e3-share-actions{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}.jf-e3-share-actions button{min-height:42px;border-radius:9px!important;flex:1 1 140px}.jf-e3-share-actions button:disabled{opacity:.55;cursor:wait}
@media(max-width:959px){
 /* Apenas 5 destinos essenciais na barra inferior; Ranking e Baús acessíveis pela Home. */
 #nav button[onclick="go('desemp')"]{display:flex!important}
 #nav button[onclick="go('jejum')"],#nav button[onclick="go('ranking')"],#nav button[onclick="go('recompensas')"],#nav button[onclick="go('perfil')"],#nav button[onclick="go('admin')"]{display:none!important}
 #nav button{min-width:0!important;flex:1 1 20%!important}
 .jf-e3-goal-banner{padding:14px;align-items:stretch;flex-direction:column}.jf-e3-goal-banner>button{align-self:flex-start}
 .jf-result-chart .jf-weight-svg{min-width:0;width:100%;height:auto}
 .jf-result-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
 .jf-result-metrics .jf-metric{min-width:0;padding:15px!important}.jf-result-metrics .jf-metric strong{font-size:clamp(17px,5vw,25px);overflow-wrap:anywhere}
}
@media(max-width:380px){.jf-e3-goal-options{grid-template-columns:1fr}.jf-result-metrics{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.jp-e3-scene .jp-pet,.jp-e3-scene .jp-party-chest{animation:none!important}}

.jf-e3-photo-panel{margin-top:18px}.jf-e3-photo-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.jf-e3-photo-head h2{margin:8px 0 5px;font-size:23px}.jf-e3-photo-head p{font-size:12px;color:var(--t2)}.jf-e3-photo-head>span{white-space:nowrap;font-weight:750;font-size:12px;color:var(--a)}
.jf-e3-photo-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;margin:17px 0}.jf-e3-photo-item{min-width:0;position:relative;border-radius:11px;overflow:hidden;border:1px solid var(--line);background:var(--soft)}.jf-e3-photo-item img{width:100%;aspect-ratio:3/4;object-fit:cover;display:block}.jf-e3-photo-item small{font-size:10px;color:var(--t2);display:block;padding:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.jf-e3-remove-photo{position:absolute;top:5px;right:5px;width:29px;height:29px;min-height:29px;padding:0!important;border-radius:50%;background:rgba(20,23,29,.7)!important;color:#fff!important;border:0}.jf-e3-upload{cursor:pointer;display:inline-flex;align-items:center;min-height:42px;padding:10px 15px;border-radius:9px}.jf-e3-story-wrap{padding-top:12px;text-align:center}.jf-e3-story-wrap #vc{box-shadow:0 12px 30px rgba(24,27,35,.13)}
@media(max-width:600px){.jf-e3-photo-grid{gap:5px}.jf-e3-photo-item small{font-size:8px;padding:4px}.jf-e3-photo-head h2{font-size:19px}.jf-e3-story-wrap #vc{max-width:230px}}

/* E3.1: clear resume action and consistent media controls. */
.jf-e3-profile-goals{align-items:center}.jf-e3-profile-goals>div{flex:1 1 250px;min-width:0}
.jf-e3-profile-goals>button{min-height:42px;white-space:normal;max-width:100%}
.jf-e3-photo-panel img{content-visibility:auto}.jf-e3-photo-item .jf-e3-remove-photo{z-index:1}
.jf-e3-story-wrap button[hidden]{display:none!important}
@media(max-width:600px){.jf-e3-profile-goals{align-items:stretch}.jf-e3-profile-goals>button{width:100%}}
@media(prefers-reduced-motion:reduce){.jp-e3-scene .jp-e3-prop{animation:none!important}}
