.embedded, .embedded body { min-height: 0; }
.embedded .site-header { display: none; }
.embedded body { margin: 0; }
.team-roster { padding: 1rem; margin-block: 1rem; }
.team-roster[hidden] { display: none; }
.team-roster summary { color: var(--blue-light); cursor: pointer; font-weight: 700; padding-block: .5rem; }
.team-roster p { color: var(--muted); font-size: .875rem; line-height: 1.6; margin-block: 1rem; }
.team-roster-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 14rem), 1fr)); gap: 1rem; }
.team-roster-grid label { color: var(--muted); font-size: .875rem; }
.team-roster-grid select { margin-top: .5rem; }
.player-label { paint-order: stroke; stroke: var(--bg); stroke-width: 4px; stroke-linejoin: round; }
.learning-controls { margin-block: .75rem; padding: .8rem 1rem; }
.learning-controls>div { display:flex; flex-wrap:wrap; gap:.6rem; align-items:end; }
.learning-controls label { font-size:.75rem; color:var(--muted); flex:1; }
.learning-controls select { margin-top:.25rem; }
.learning-controls p { color:var(--muted); font-size:.75rem; margin:.5rem 0 0; }
.coach-save-controls { display:grid; gap:.75rem; margin-top:1rem; }
.mobile-board-actions { display:none; }
.board-drawer { max-height:calc(var(--host-visible-height, 100dvh) - 2rem); overflow:auto; width:min(100% - 1.5rem, 32rem); padding:1rem; }
.embedded .board-drawer[open] { top:var(--host-center,50%); bottom:auto; margin-block:0; transform:translateY(-50%); }
.board-drawer .drawer-close { display:block; margin-left:auto; margin-bottom:.75rem; }
.board-drawer .setup-panel,.board-drawer .insight-column { display:block; width:auto; }
.board-drawer .insight-column>* { margin-bottom:.75rem; }
[hidden] { display:none!important; }
@media(max-width:760px){
 .app-shell { padding:.75rem!important; }
 .page-intro { display:none; }
 .workspace-nav { display:flex; gap:.4rem; margin:0 0 .6rem; }
 .mode-tabs { flex:1; display:flex; min-width:0; }
 .mode-tab { flex:1; padding:.7rem .3rem!important; font-size:.8rem; white-space:nowrap; }
 .mode-tab>span { display:none; }
 .playbook-entry { font-size:.8rem; padding:.7rem .5rem!important; }
 .mobile-board-actions { display:flex; gap:.5rem; margin-bottom:.65rem; }
 .mobile-board-actions .button { flex:1; font-size:.75rem; padding:.65rem .4rem; }
 .mobile-board-actions [data-help] { flex:0; min-width:2.5rem; }
 .workspace { display:block!important; }
 .board-column { width:100%; min-width:0; }
 .pitch-wrap { padding:0 .5rem; }
 #pitch { width:100%; max-height:calc(var(--host-height,100dvh) * .62); display:block; }
 .board-topbar { padding:.65rem .75rem; }
 .pitch-instruction,.goal-situation { font-size:.7rem; line-height:1.4; padding:.25rem .5rem; margin:0; }
 .direction-label,.pitch-watermark,.pitch-footer { font-size:.65rem; }
 .direction-label { padding:.25rem; }
 .pitch-footer { padding:.5rem; }
 .scenario-bar { margin-top:.6rem; padding:.65rem; }
 .scenario-steps { display:none; }
 .scenario-explanation { font-size:.75rem; margin-top:.5rem; }
 .challenge-mode .scenario-bar,.challenge-mode .scenario-explanation { display:none; }
 #challenge-panel { margin-bottom:.75rem; padding:.85rem; }
 #challenge-panel h2 { font-size:1rem; }
 #challenge-panel p { font-size:.8rem; }
 .learning-controls { padding:.65rem; }
 .learning-controls .button { font-size:.75rem; padding:.65rem; }
 .coach-toolbar { display:flex; flex-wrap:wrap; gap:.35rem; padding:.5rem; }
 .coach-toolbar .tool { min-height:2.6rem; padding:.5rem; }
 .app-footer { margin-top:1rem; padding:.75rem 0; font-size:.7rem; }
 .playbook-shell { padding:.75rem; }
 .playbook-nav { display:flex; gap:.4rem; }
 .playbook-nav a { flex:1; text-align:center; padding:.75rem .3rem; font-size:.8rem; }
 .playbook-heading { margin:.5rem 0 .75rem; }
 .playbook-heading h1 { font-size:1.15rem; }
 .playbook-heading .eyebrow { display:none; }
 .playbook-grid { display:block; }
 #play-field { width:100%; max-height:calc(var(--host-height,100dvh) * .62); object-fit:contain; }
 .play-transport { padding:.75rem; margin-top:.5rem; }
 .play-transport .transport-row { flex-wrap:wrap; gap:.4rem; }
 .play-transport .button { font-size:.8rem; }
 .play-beats { display:none; }
 .beat-explanation p,.video-actions p { font-size:.75rem; }
 .playbook-footer { margin-top:1rem; padding-block:.75rem; font-size:.7rem; }
 .board-drawer .play-setup,.board-drawer .play-insights { display:block; }
}
