.plan-gate{position:fixed;inset:0;z-index:60;overflow:auto;background:var(--bg);padding:calc(clamp(20px,5vw,64px) + env(safe-area-inset-top)) calc(clamp(20px,5vw,64px) + env(safe-area-inset-right)) calc(clamp(20px,5vw,64px) + env(safe-area-inset-bottom)) calc(clamp(20px,5vw,64px) + env(safe-area-inset-left));color:var(--text)}
.plan-shell{max-width:940px;margin:0 auto}.plan-shell h1{font-size:clamp(28px,5vw,44px);line-height:1.1}.plan-shell p{color:var(--muted)}
.plan-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:24px 0}.setup-intro{max-width:760px}.goal-picker{margin:22px 0}.goal-catalog{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0;max-height:900px;opacity:1;transform:translateY(0);overflow:hidden;transition:max-height .28s ease,opacity .2s ease,transform .28s ease}.goal-picker.is-collapsed .goal-catalog{max-height:0;opacity:0;transform:translateY(-8px);pointer-events:none}.goal-selection-summary{width:100%;display:flex;align-items:center;justify-content:space-between;gap:14px;text-align:left;padding:12px 14px;border:1px solid color-mix(in srgb,var(--hot) 48%,var(--line));border-radius:14px;background:linear-gradient(145deg,color-mix(in srgb,var(--hot) 10%,var(--panel)),var(--panel));color:var(--text);box-shadow:0 10px 28px #0003}.goal-selection-summary[hidden]{display:none}.goal-selection-summary>span:first-child{min-width:0}.goal-selection-summary small{display:block;color:var(--muted);font-size:.64rem;font-weight:900;letter-spacing:.09em}.goal-selection-summary b{display:block;margin-top:3px;font-size:.95rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.goal-selection-action{flex:0 0 auto;color:var(--accent-text,var(--hot));font-size:.78rem;font-weight:900}.goal-selection-summary:hover{border-color:var(--hot);filter:brightness(1.04)}.goal-option{appearance:none;text-align:left;min-height:164px;padding:18px;border:1px solid var(--line);border-radius:16px;background:linear-gradient(180deg,var(--panel),var(--panel2));color:var(--text);cursor:pointer;transition:.18s transform,.18s border-color,.18s box-shadow}.goal-option:hover{transform:translateY(-2px);border-color:#ff4d2466}.goal-option.selected{border-color:var(--hot);box-shadow:0 0 0 2px #ff4d2418,0 16px 34px #0005}.goal-option span{display:inline-flex;padding:5px 8px;border-radius:999px;background:#ff4d2414;color:#ff8d73;font-size:.66rem;font-weight:900;letter-spacing:.08em}.goal-option b{display:block;font-size:1.02rem;margin:12px 0 7px}.goal-option small{display:block;color:var(--muted);line-height:1.45}.recommendation-builder{padding:24px;margin-top:22px}.setup-essentials{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.setup-essentials .field{margin:0}.advanced-setup{margin-top:14px;border:1px solid var(--line);border-radius:13px;background:var(--panel2);overflow:hidden}.advanced-setup>summary{display:flex;justify-content:space-between;gap:12px;align-items:center;cursor:pointer;padding:13px 14px;font-weight:850;list-style:none}.advanced-setup>summary::-webkit-details-marker{display:none}.advanced-setup>summary small{color:var(--muted);font-size:.72rem}.advanced-setup[open]>summary{border-bottom:1px solid var(--line)}.advanced-setup .recommendation-fields{padding:4px 14px 12px}.recommendation-result{display:grid;gap:3px;padding:14px;border:1px solid color-mix(in srgb,var(--hot) 38%,var(--line));border-radius:13px;background:linear-gradient(145deg,color-mix(in srgb,var(--hot) 8%,var(--panel2)),var(--panel2))}.recommendation-result span{color:var(--hot);font-size:.64rem;font-weight:900;letter-spacing:.1em}.recommendation-result b{font-size:.98rem}.recommendation-result small{color:var(--muted)}.recommendation-details{margin-top:10px;border:1px solid var(--line);border-radius:12px;overflow:hidden}.recommendation-details>summary{cursor:pointer;padding:12px 14px;font-weight:800;font-size:.82rem}.recommendation-details[open]>summary{border-bottom:1px solid var(--line)}.recommendation-details .recommendation-days{padding:0 12px 12px}.recommendation-builder-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}.recommendation-builder-head h2{margin:4px 0 0}.recommendation-engine{font-size:.7rem;font-weight:900;letter-spacing:.12em;padding:7px 10px;border:1px solid #c8ff3635;border-radius:999px;color:var(--lime);background:#c8ff360b}.recommendation-fields select{width:100%;min-height:44px;background:var(--bg);color:var(--text);border:1px solid var(--line);border-radius:10px;padding:9px}.recommendation-preview{margin-top:20px;padding-top:20px;border-top:1px solid var(--line)}.recommendation-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.recommendation-summary>div{padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--panel2)}.recommendation-summary small{display:block;color:var(--muted);font-size:.64rem;letter-spacing:.08em}.recommendation-summary b{display:block;margin-top:5px;font-size:.86rem}.recommendation-days{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}.recommendation-days article{padding:14px;border:1px solid var(--line);border-radius:12px;background:#0b0d10}.recommendation-days span{display:inline-flex;color:var(--hot);font-size:.7rem;font-weight:900}.recommendation-days b,.recommendation-days small{display:block}.recommendation-days b{margin:5px 0}.recommendation-days small,.recommendation-days p{color:var(--muted);font-size:.74rem}.recommendation-days p{margin:7px 0 0;line-height:1.4}.recommendation-note{font-size:.78rem!important;margin:12px 0 0}.recommendation-cta{width:100%;min-height:50px;margin-top:8px}.plan-card{padding:24px;display:flex;flex-direction:column;gap:12px}.plan-card h2,.plan-card p{margin:0}.plan-card .btn{margin-top:auto;min-height:48px}.plan-card strong{font-size:24px}
.plan-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-top:16px}.plan-status{padding:16px 20px;margin-bottom:20px;border:1px solid var(--line);border-radius:14px;display:flex;justify-content:space-between;gap:14px;align-items:center;flex-wrap:wrap}.plan-status small{display:block;color:var(--muted)}
.plan-message{min-height:24px;color:var(--muted);overflow-wrap:anywhere}.plan-invite{padding:22px;margin:18px 0}.plan-invite input{width:100%;min-width:0}.plan-invite output{display:block;overflow-wrap:anywhere;margin-top:12px;user-select:all}
.plan-editor{width:min(950px,calc(100% - 24px));max-height:90vh;overflow:auto;background:var(--panel);color:var(--text)}.plan-editor .modal{padding:24px}.plan-editor-row{display:grid;grid-template-columns:32px minmax(120px,1fr) minmax(170px,2fr) 80px 110px 84px 44px;gap:10px;margin:16px 0;align-items:end;transition:opacity .15s,outline-color .15s}.plan-editor-row label{display:grid;gap:6px;font-size:14px}.plan-editor-row input,.plan-editor-row select{min-width:0;width:100%;padding:10px;background:var(--bg);color:var(--text);border:1px solid var(--line);border-radius:9px}.plan-order{display:flex;gap:6px}.plan-order .btn{min-width:38px;padding:10px 8px}.plan-order .btn:disabled{opacity:.3}.plan-drag{align-self:end;height:42px;border:1px solid var(--line);border-radius:9px;background:var(--panel2);color:var(--muted);font-size:19px;cursor:grab}.plan-drag:active{cursor:grabbing}.plan-editor-row.is-dragging{opacity:.4}.plan-editor-row.drag-target{outline:2px solid var(--hot);outline-offset:4px;border-radius:10px}
.plan-gate .field input{width:100%}.plan-gate .plan-price-note{font-size:14px}.plan-lock .app{visibility:hidden!important}.plan-lock dialog[open]{visibility:hidden}.plan-account-card{padding:24px}.plan-account-card p{color:var(--muted)}
@media(max-width:980px){.setup-essentials{grid-template-columns:repeat(2,minmax(0,1fr))}.goal-catalog{grid-template-columns:repeat(2,minmax(0,1fr))}.recommendation-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.setup-essentials{grid-template-columns:1fr}.setup-intro{font-size:.92rem}.goal-picker{margin:14px 0}.goal-option{min-height:0;padding:14px}.goal-option b{margin:8px 0 4px}.goal-option small{font-size:.78rem}.recommendation-preview{margin-top:14px;padding-top:14px}.recommendation-result{padding:12px}.advanced-setup>summary{min-height:46px}.plan-grid,.goal-catalog,.recommendation-days{grid-template-columns:1fr}.recommendation-builder{padding:16px}.recommendation-builder-head{display:block}.recommendation-engine{display:inline-flex;margin-top:10px}.recommendation-summary{grid-template-columns:1fr 1fr}.plan-editor{width:calc(100% - 12px);max-height:96vh}.plan-editor .modal{padding:14px}.plan-editor-row{grid-template-columns:80px minmax(0,1fr) 68px 34px;gap:6px;margin:10px 0;padding:10px 0;border-bottom:1px solid var(--line);align-items:end}.plan-drag{display:none}.plan-editor-row label{font-size:11px;gap:3px}.plan-editor-row input,.plan-editor-row select{height:38px;padding:7px 6px;font-size:.76rem}.plan-editor-row .own-group{grid-column:1;grid-row:1}.plan-editor-row .own-exercise{grid-column:2/4;grid-row:1}.plan-editor-row .own-sets{grid-column:1;grid-row:2}.plan-editor-row .own-reps{grid-column:2;grid-row:2}.plan-editor-row>.plan-order{grid-column:3/5;grid-row:2;gap:4px}.plan-order .btn{min-width:0;min-height:38px;height:38px;padding:6px;font-size:.78rem}.plan-editor-row>.own-remove{grid-column:4;grid-row:1;min-width:34px;min-height:38px;height:38px;padding:6px}.plan-actions .btn{min-height:44px}.plan-shell{padding-bottom:30px}}

/* FORJA Coach: orientação adaptativa, carga automática e medidas */
.coach-tip{margin:10px 0 12px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:linear-gradient(135deg,#11151a,#0b0d10);display:grid;gap:4px}
.coach-tip>span,.focus-coach>span{font-size:.62rem;font-weight:900;letter-spacing:.12em;color:var(--lime)}
.coach-tip b,.focus-coach b{font-size:.88rem}.coach-tip p,.focus-coach p{margin:0;color:var(--muted);font-size:.78rem;line-height:1.45}
.coach-tip small{color:var(--muted);font-size:.68rem}.coach-tip.up{border-color:#c8ff3645}.coach-tip.warning,.focus-coach.warning{border-color:#ffb84d55;background:#ffb84d0b}
.focus-coach{margin:12px 0;padding:12px 14px;border:1px solid #c8ff3638;border-radius:12px;background:#c8ff3608;display:grid;gap:4px}
.coach-dashboard{padding:22px;margin-bottom:18px}.coach-dashboard-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.coach-dashboard-head h2{margin:4px 0}.coach-dashboard-head p{margin:5px 0 0;color:var(--muted);max-width:720px}
.coach-live-badge{padding:7px 10px;border:1px solid #c8ff3635;border-radius:999px;color:var(--lime);font-size:.64rem;font-weight:900;letter-spacing:.1em;background:#c8ff3609}
.coach-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:18px 0}.coach-summary-item{padding:13px;border:1px solid var(--line);border-radius:12px;background:var(--panel2)}.coach-summary-item span{font-size:.62rem;color:var(--hot);font-weight:900;letter-spacing:.1em}.coach-summary-item p{margin:6px 0 0;font-size:.79rem;line-height:1.45;color:var(--muted)}
.body-metrics-wrap{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);gap:16px;padding-top:18px;border-top:1px solid var(--line)}
.body-metric-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.body-metric-form label{display:grid;gap:5px;font-size:.72rem;color:var(--muted)}.body-metric-form input{width:100%;min-width:0;padding:10px;border:1px solid var(--line);border-radius:9px;background:var(--bg);color:var(--text)}.body-metric-form .btn{align-self:end;min-height:42px}.body-metric-title{grid-column:1/-1}.body-metric-title small{display:block;color:var(--muted);margin-top:4px}
.body-metric-latest{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.body-metric-latest>div{padding:10px;border:1px solid var(--line);border-radius:10px;background:var(--panel2)}.body-metric-latest small,.body-metric-latest b,.body-metric-latest em{display:block}.body-metric-latest small{color:var(--muted);font-size:.65rem}.body-metric-latest b{margin-top:4px}.body-metric-latest em{margin-top:2px;color:var(--lime);font-size:.68rem;font-style:normal}
.body-history-row{display:grid;grid-template-columns:90px 80px 1fr;gap:8px;padding:8px 4px;border-bottom:1px solid var(--line);font-size:.72rem}.body-history-row small{color:var(--muted)}.coach-empty{grid-column:1/-1;color:var(--muted);padding:18px;text-align:center}.coach-disclaimer{margin:14px 0 0;color:var(--muted);font-size:.7rem;line-height:1.45}
@media(max-width:850px){.coach-summary{grid-template-columns:1fr}.body-metrics-wrap{grid-template-columns:1fr}.body-metric-form{grid-template-columns:1fr 1fr}.coach-dashboard-head{display:block}.coach-live-badge{display:inline-flex;margin-top:10px}}
@media(max-width:520px){.body-metric-form{grid-template-columns:1fr}.body-metric-latest{grid-template-columns:1fr 1fr}.coach-dashboard{padding:16px}.coach-tip{padding:10px 11px}.body-history-row{grid-template-columns:82px 70px 1fr}}

/* Onboarding beta: primeiro identifica aluno/personal; plano só aparece depois */
.beta-callout{display:flex;gap:14px;align-items:flex-start;padding:14px 16px;margin:12px 0 18px;border:1px solid #c8ff3638;border-radius:14px;background:#c8ff3608}
.beta-callout>span{flex:0 0 auto;padding:6px 9px;border-radius:999px;background:var(--lime);color:#090b0d;font-size:.63rem;font-weight:950;letter-spacing:.1em}
.beta-callout b{display:block;font-size:.94rem}.beta-callout p{margin:4px 0 0;color:var(--muted);font-size:.78rem;line-height:1.45}
.onboarding-lead{color:var(--muted);line-height:1.55;max-width:760px}.onboarding-role-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:18px 0}
.onboarding-role-card{appearance:none;text-align:left;color:var(--text);cursor:pointer;padding:22px;min-height:210px;display:flex;flex-direction:column;align-items:flex-start;gap:9px;transition:transform .16s,border-color .16s,background .16s}
.onboarding-role-card:hover{transform:translateY(-2px);border-color:#c8ff3650;background:linear-gradient(145deg,var(--panel),#c8ff3605)}
.onboarding-role-card>span{font-size:.64rem;color:var(--lime);font-weight:900;letter-spacing:.12em}.onboarding-role-card h2{margin:0}.onboarding-role-card p{margin:0;color:var(--muted);line-height:1.5;flex:1}.onboarding-role-card>b{margin-top:auto;color:var(--text);font-size:.82rem}
.onboarding-footnote{font-size:.72rem;color:var(--muted);text-align:center}.onboarding-back{margin-top:4px}.onboarding-plan-card{padding:24px;margin:16px 0}.onboarding-plan-card h2{margin:6px 0}.onboarding-plan-card>p{color:var(--muted);line-height:1.5}
.onboarding-plan-card ul{margin:18px 0;padding-left:20px;color:var(--muted);display:grid;gap:8px}.onboarding-price{display:flex;align-items:baseline;gap:6px;margin:16px 0}.onboarding-price strong{font-size:2rem}.onboarding-price span{color:var(--muted);font-size:.78rem}.onboarding-primary{width:100%;min-height:50px}.onboarding-invite{margin:16px 0}
@media(max-width:680px){.onboarding-role-grid{grid-template-columns:1fr}.onboarding-role-card{min-height:170px;padding:18px}.beta-callout{display:grid}.onboarding-plan-card{padding:18px}}

/* Editor de dias: movido do JS para manter CSP sem style inline. */
.editor-days .is-rest{opacity:.58;border:1px dashed var(--line);background:transparent;color:var(--muted)}
.training-day-toggle{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px;margin-bottom:14px;border:1px solid var(--line);border-radius:14px;background:var(--panel2)}
.training-day-toggle strong{display:block}.training-day-toggle small{display:block;color:var(--muted);margin-top:3px}
.training-day-toggle .btn{flex:0 0 auto}.rest-day-editor{opacity:.72}
@media(max-width:620px){.training-day-toggle{align-items:stretch;flex-direction:column}.training-day-toggle .btn{width:100%}}

/* Clareza do trial e preparação personalizada do programa */
.beta-callout-strong{border-color:#c8ff3670;background:linear-gradient(135deg,#c8ff3612,#c8ff3605)}
.beta-callout-strong>span{font-size:.7rem;padding:7px 10px}.beta-callout-strong b{font-size:1rem}
.trial-highlight{margin:16px 0;padding:16px;border:1px solid #c8ff3655;border-radius:14px;background:#c8ff3608;display:grid;gap:5px}
.trial-highlight strong{color:var(--lime);font-size:1.25rem;letter-spacing:.04em}.trial-highlight span{font-weight:850}.trial-highlight small{color:var(--muted);line-height:1.5}
.onboarding-no-charge{text-align:center!important;font-size:.72rem!important;color:var(--muted)!important;margin:10px 0 0!important}
.recommendation-loading{min-height:360px;display:grid;place-items:center;align-content:center;text-align:center;gap:12px;padding:38px 20px}
.recommendation-loading>span{font-size:.65rem;font-weight:950;letter-spacing:.16em;color:var(--lime)}.recommendation-loading h2{margin:0;font-size:clamp(1.7rem,4vw,2.6rem)}.recommendation-loading p{margin:0;color:var(--muted)}
.recommendation-spinner{width:56px;height:56px;border:4px solid #ffffff12;border-top-color:var(--lime);border-radius:50%;animation:forjaSpin .8s linear infinite}
.recommendation-loading-bar{width:min(360px,82vw);height:6px;border-radius:999px;background:#ffffff0c;overflow:hidden;margin-top:10px}.recommendation-loading-bar i{display:block;width:35%;height:100%;border-radius:inherit;background:var(--lime);animation:forjaLoad 1.35s ease-in-out infinite}
.recommendation-loading.is-ready .recommendation-spinner{animation:none;border-color:var(--lime);position:relative}.recommendation-loading.is-ready .recommendation-spinner:after{content:'✓';display:grid;place-items:center;height:100%;font-size:1.6rem;color:var(--lime)}
.trial-countdown{flex:1 1 100%;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 16px;align-items:center;padding-top:14px;margin-top:2px;border-top:1px solid #c8ff362c}
.trial-countdown span{display:block;color:var(--lime);font-size:.62rem;font-weight:950;letter-spacing:.12em}.trial-countdown b{display:block;margin-top:3px}.trial-countdown small{display:block;color:var(--muted);margin-top:3px}.trial-countdown p{grid-column:1/-1;margin:0;color:var(--muted);font-size:.7rem}
@keyframes forjaSpin{to{transform:rotate(360deg)}}@keyframes forjaLoad{0%{transform:translateX(-130%)}50%{transform:translateX(160%)}100%{transform:translateX(340%)}}
@media(max-width:680px){.trial-countdown{grid-template-columns:1fr}.trial-countdown .btn{width:100%}.trial-countdown p{grid-column:1}.recommendation-loading{min-height:300px}}

/* Retomada do trial original após recriação de conta */
.beta-callout.trial-resumed{border-color:#59b7ff70;background:linear-gradient(135deg,#59b7ff14,#59b7ff05)}
.beta-callout.trial-resumed>span{background:#59b7ff;color:#07111a}
.beta-callout.trial-used{border-color:#ff9a5a66;background:linear-gradient(135deg,#ff9a5a12,#ff9a5a05)}
.beta-callout.trial-used>span{background:#ff9a5a;color:#160a03}
.trial-highlight.trial-resumed{border-color:#59b7ff55;background:#59b7ff08}
.trial-highlight.trial-resumed strong{color:#75c5ff}
.trial-highlight.trial-ended{border-color:#ff9a5a55;background:#ff9a5a08}
.trial-highlight.trial-ended strong{color:#ffad76}

@media(max-width:700px){
 .plan-editor,.forja-action-dialog,.reorder-dialog,.session-detail{max-height:calc(100dvh - env(safe-area-inset-top) - env(safe-area-inset-bottom) - 10px)}
 .plan-actions,.modal-actions{padding-bottom:max(0px,env(safe-area-inset-bottom))}
}
