.training-phone-advice { display:flex; gap:12px; align-items:flex-start; padding:16px; margin:0 0 20px; border:1px solid #e9bc62; border-left:5px solid #e9a52c; border-radius:12px; background:#fff0c2; color:#192b3b; }
.training-page:not(:has(#app .module-stage)) .training-phone-advice { display:none !important; }
.training-phone-advice[hidden] { display:none !important; }
.training-phone-advice strong { display:block; font-size:17px; line-height:1.4; }
.training-phone-advice p { margin:6px 0 0; font-size:15px; line-height:1.5; }
.training-phone-advice button { flex:0 0 44px; min-width:44px; min-height:44px; padding:0; border:1px solid #b58a39; border-radius:8px; background:transparent; color:#192b3b; font-size:24px; cursor:pointer; }
.training-phone-advice button:focus-visible { outline:2px solid #192b3b; outline-offset:3px; }
/* Keep the document exercise in the normal page flow on narrow touch screens. */
@media (max-width:600px) and (pointer:coarse) {
  body.training-page #fbWidgetBtn { position:static !important; display:block; margin:16px auto; min-height:44px; }
  body.training-page .module-layout-wide:has(.scene-m01-hub,.scene-m01-notes,.scene-m01-roster) { display:block; }
  body.training-page .scene:is(.scene-m01-hub,.scene-m01-notes,.scene-m01-roster) { aspect-ratio:auto !important; height:auto !important; min-height:0 !important; overflow:visible !important; container-type:normal; padding:16px; background-image:none !important; background-color:#102633; }
  body.training-page .scene:is(.scene-m01-hub,.scene-m01-notes,.scene-m01-roster)::after { display:none; }
  body.training-page .scene:is(.scene-m01-notes,.scene-m01-roster) { background-color:#f3f7fc; color:#0a121c; }
  body.training-page .scene:is(.scene-m01-notes,.scene-m01-roster) .scene-safe { position:static !important; inset:auto !important; width:100% !important; height:auto !important; max-height:none !important; overflow:visible !important; padding:0 !important; font-size:16px !important; line-height:1.5 !important; }
  body.training-page .scene:is(.scene-m01-notes,.scene-m01-roster) .q-prompt { font-size:16px !important; line-height:1.5 !important; margin-bottom:14px !important; }
  body.training-page .scene:is(.scene-m01-notes,.scene-m01-roster) :is(.choice,.check) { min-height:48px !important; padding:12px !important; font-size:16px !important; line-height:1.5 !important; overflow-wrap:anywhere; }
  body.training-page .scene:is(.scene-m01-notes,.scene-m01-roster) .check span { font-size:16px !important; line-height:1.5 !important; }
  body.training-page .scene:is(.scene-m01-notes,.scene-m01-roster) .check input { flex:0 0 20px; width:20px; height:20px; margin:2px 6px 0 0; }
  body.training-page .scene:is(.scene-m01-notes,.scene-m01-roster) .q-actions { position:static !important; margin-top:16px !important; }
  body.training-page .scene:is(.scene-m01-notes,.scene-m01-roster) .q-actions button { min-height:48px; width:100%; font-size:16px; }
  body.training-page .scene:is(.scene-m01-notes,.scene-m01-roster) .roster-table { table-layout:fixed; width:100%; font-size:14px !important; }
  body.training-page .scene:is(.scene-m01-notes,.scene-m01-roster) .roster-table :is(th,td) { padding:8px !important; white-space:normal; overflow-wrap:anywhere; }
  body.training-page .scene-m01-hub .scene-hub-hotspots { position:static; inset:auto; width:100%; height:auto; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
  body.training-page .scene-m01-hub .scene-hub-hotspots .hub-doc { display:flex; flex-direction:column; align-items:center; justify-content:center; min-width:0; min-height:148px; padding:12px; }
  body.training-page .scene-m01-hub .scene-hub-hotspots .hub-doc-icon { flex:0 0 auto; width:48px; height:58px; }
  body.training-page .scene-m01-hub .hub-doc-file { display:block; width:100%; height:100%; object-fit:contain; }
  body.training-page .scene-m01-hub .scene-hub-hotspots .hub-doc-label { font-size:16px; line-height:1.4; text-transform:none; letter-spacing:normal; overflow-wrap:anywhere; }
  body.training-page .scene-m01-hub .scene-top { position:static !important; margin-bottom:12px; }
  body.training-page .scene-m01-hub #hubContinue { position:static !important; transform:none !important; min-height:48px; }
  body.training-page .scene-window-title { position:static; margin-bottom:12px; font-size:18px; }
}
